2015-02-12 2 views
0

Я уверен, что это будет легкое исправление, но я этого не вижу. Я хочу изменить текстуру на материале, проецирующем проектор. Это то, что у меня естьНе удается заставить SetTexture работать

using UnityEngine; 
using System.Collections; 

public class ShowPresentation : MonoBehaviour { 
    private GameObject SceneProjector; 
    private Material proj; 
    public Texture2D NewTexture; 

    void Start() { 
     SceneProjector = GameObject.FindGameObjectWithTag("Projector") ; 
     proj = SceneProjector.GetComponent<Projector>().material; 
     NewTexture = Resources.LoadAssetAtPath ("Assets/Textures/Wood.tga", typeof(Object)) as Texture2D; 
     proj.SetTexture("_MainTex", NewTexture); 
    } 


    void Update() { 
     Debug.Log (proj); 
     Debug.Log(NewTexture); 
     } 
} 

Все, что раньше было в обновлении, но даже в Start она не будет работать. Журналы отладки показывают, что он может найти материал и текстуру, поэтому он должен быть что-то делать с SetTexture

Помощь будет высоко ценится

ответ

0

я не знаю, что вы сделали, но это пример из единая документация. вы можете установить его в сценарий объекта, который вы хотите изменить его текстуру. _BumpMap нормальная карта

public Texture bumpMap; 
renderer.material.SetTexture("_BumpMap", bumpMap); 
+0

проблема с тем, что я, кажется, не имеют визуализатор на проекторе. Возможно, я делаю все это неправильно, я попытался изменить код материала, который не работал. Может быть, мне нужно немного поспать и снова попробовать завтра. Спасибо за вашу помощь :) – ILiveForVR

+0

Получил! Оказывается, мне не нужен BumpMap, но _ShadowTex: D. Не упоминалось в документации :) – ILiveForVR

Смежные вопросы