【发布时间】:2017-09-09 19:50:58
【问题描述】:
我将粒子系统分配给给定的对象,并将网格分配给那些粒子系统作为发射器形状。在编辑器中一切正常,但在构建中,粒子系统只是不接收网格:粒子从一点发射,即游戏对象的枢轴。 代码如下:
string nameToLookFor = mf.mesh.name.Replace(" Instance", "");
Mesh myAwesomeNewMeshForNoApparentReason = null;
if (!LoadedAdditionalMeshes.ContainsKey(nameToLookFor))
{
Mesh m = Resources.Load<Mesh>("Meshes/" + nameToLookFor);
if (m != null)
{
//add to dict.
LoadedAdditionalMeshes.Add(m.name, m);
}
}
myAwesomeNewMeshForNoApparentReason = LoadedAdditionalMeshes[nameToLookFor];
var sh2 = system.shape;
sh2.mesh = myAwesomeNewMeshForNoApparentReason;
LoadedAdditionalMeshes 是一个Dictionary<string,Mesh>。它已被实例化,并且 - 如前所述 - 在编辑器中工作。
我确实用调试器连接了我的构建,没有错误,没有任何记录,它只是不起作用。
编辑:当然我试过调试它,网格实际上被加载并被分配。很明显,代码在编辑器中运行良好。问题是,为什么在将它构建到 Android 后它不起作用?
【问题讨论】:
-
不确定你的问题是什么,但你的 try catch 有一个空的 catch。我会尝试在你的捕获中抛出一个错误,看看是否有任何事情发生。
-
抱歉,粘贴了旧代码。在我提到的情况下,try catch 被取出,我去编辑问题。