Назначить текстуру

Программирование на Юнити.

Назначить текстуру

Сообщение Track 15 мар 2011, 20:53

День добрый
Tекстура никак не хочет присваиваться на объект.
Я уж с ней и так и этак...

Синтаксис:
Используется csharp
using UnityEditor;
using UnityEngine;

class ObjMaterials : EditorWindow
{
    public string file = @"D:\My Documents\Unity Projects\New Unity Project 2\Assets\Tree_Textures\shadow.png";
    private Texture2D Map;
    private Material Mat;

    [MenuItem("Materials/Assign materials")]
    static void MaterialWindow()
    {
        ObjMaterials window = (ObjMaterials)EditorWindow.GetWindow(typeof(ObjMaterials));
        window.Show();
    }

    void OnGUI()
    {

        GUILayout.Label("Assign materials:", EditorStyles.boldLabel);
        GUILayout.BeginHorizontal();

        if (GUILayout.Button("Assign materials"))
        {
            matAssign();
        }

        GUILayout.EndHorizontal();
    }
   
    void matAssign()
    {
        GameObject cube = GameObject.Find("Cube");
        if (cube != null) DestroyImmediate(cube,false);

        GameObject go = GameObject.CreatePrimitive(PrimitiveType.Cube);
        Mat = new Material((Shader.Find(" Glossy")));
        Map = (Texture2D)Resources.Load(file, typeof(Texture2D));
        Mat.mainTexture = Map;
        Mat.name = "New Material";
        go.renderer.sharedMaterial = Mat;

        Selection.objects = FindObjectsOfType(typeof(GameObject));
    }
}
 
Track
UNец
 
Сообщения: 2
Зарегистрирован: 11 мар 2011, 18:14

Re: Назначить текстуру

Сообщение Track 16 мар 2011, 16:20

Уже подсказали решение
текстуру положить надо в Assets/Resources/ и все будет работать.
Track
UNец
 
Сообщения: 2
Зарегистрирован: 11 мар 2011, 18:14


Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7