我将粒子系统分配给给定的对象和那些粒子系统我将网格指定为发射器形状。在编辑器中一切正常,但在构建中,粒子系统只是没有接收到网格:粒子从一个点发射,即GameObject的枢轴。 这是代码:
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之后这不起作用?
答案 0 :(得分:0)
Particle Systems
未收到网格的原因是gameobjects
被标记为static
。删除之后,所有工作都应该如此。现在,为什么这也不适用于精灵,(允许静态)它让我感到惊讶。但是对于网格,static
在这种情况下是不可行的。