统一数最多可以处理多少个,我正在统一构建一个基于家具的应用程序,我的客户想要高度详细的3D模型。统一可以处理的最大问题是什么?是否有最佳实践来保持资产的质量并且不影响应用程序的性能。我正在为以下平台(OSX,Windows,Android和iOS)构建应用程序。
答案 0 :(得分:1)
除了每个网格65k个顶点(如果使用默认值,16位索引)以外,没有严格的技术限制,但是我认为网格数量没有限制,并且如果您正在重新使用网格,则可以使用Graphics.DrawMeshInstanced绘制它们,或者如果您喜欢一些缓冲工作,则使用Graphics.DrawMeshInstancedIndirect。
使用相对现代的图形卡,足够的内存等,您可以轻松地在百万范围内工作。您可以进一步推动(数千万到数亿?),但在某些时候,性能将不可避免地下降。
因此,基本上的答案是:可以容纳在您的RAM中的任何数字,如果您希望实时地使用它,则具有次要的约束取决于您的硬件(如果不耗尽内存,统一会渲染任意数量的多边形,但是可笑的多边形数量可能需要几秒钟才能呈现出来
答案 1 :(得分:0)
如果您想要详细的对象和高性能,可以使用详细程度,可以在这里找到更多信息:https://docs.unity3d.com/560/Documentation/Manual/LevelOfDetail.html#:~:text=and%20OpenGL%20Core-,Level%20of%20Detail%20(LOD),on%20it%20is%20greatly%20reduced.&text=An%20optimisation%20technique%20called%20Level,its%20distance%20from%20camera%20increases。
对于Android设备,建议将场景的多边形数量保持在90k以下,在PC设备中,该数量可以增加到1或2百万。
但是,有一些诸如遮挡剔除之类的技术可以提高游戏性能。 请参见以下链接:https://docs.unity3d.com/Manual/OcclusionCulling.html