目标是模拟建筑物的爆炸。目前正在为Unity 3D开发模拟器。然而,现在在爆炸发生时,在4000个碰撞器中,构建FPS的碎片下降到0。
印象,unity3d无法提供必要的性能。 是否有最佳物理计算和足够水平的图形(照明,爆炸精灵,纹理等)的替代品?
答案 0 :(得分:2)
4000个碰撞器过多,特别是如果所有碰撞器同时发生碰撞。你总是可以优化和“伪造”东西。根据模拟的范围,您可能不需要所有生成的粒子碰撞。例如,灰尘和微小颗粒可能是voxels。
如果您的模拟计算量很大,那么任何物理模拟应该是,那么您应该将数字运算委托给C.
在Unity中,您还可以利用着色器语言并将包发送到GPU以帮助您渲染。您还应该寻找优化方法,例如缓存组件。好好阅读optimization in Unity。
您还可以告诉模拟忽略某些对象之间的某些碰撞,例如忽略A和B之间的碰撞。
一旦你到达地面或某个条件,你也可以添加这行代码:
rigidbody.isKinematic = true;
这将使Unity忽略该Rigibody的物理学。 Info here