我正在尝试设置Material的mainTexture,但没有成功。这是我正在使用的代码片段:
//Material
skinData.m_Diffuse = new Material(Shader.Find("Unlit/TransparentVertexCol"));
UnityEngine.Object o;
node = root.GetChild("Diffuse");
if( node != null )
{
string name = node.value;
o = Resources.Load<Texture2D>(name);
skinData.m_Diffuse.mainTexture = Resources.Load<Texture2D>(name);
}
我添加了Object o用于调试目的。当我跟踪代码时,我设置为Texture2D,我的skinData.m_Diffuse.mainTexture为null。它在几周前发挥作用。与此同时,我将Unity更新为5.3版,并添加了许多其他不应直接影响此脚本的脚本。
我想我必须有一个原因可以设置一个像o一样的“免费”var而不是mainTexutre,但是没有消息,没有例外,如果有人有任何想法,那就什么都没有...
答案 0 :(得分:0)
我的问题与无法正常运行的shadercompiler.exe相关联。我当时没有特定的消息,然后,当我尝试编辑我的着色器以查看可能出错时,我开始遇到另一个问题,您可以在此处看到Failed to get socket connection from UnityShaderCompiler.exe shader compiler。我结束了,代码中的一切都很好。 所有这些都是通过补丁5.3.1p3
解决的