我希望优化我的程序的性能。
关闭蝙蝠我已经将舞台质量设置为中等(如果我将它设置为低半,我的动画片段不会渲染)。这有帮助,但我想要更多!!!
我在P3D Essentials书中读到的一个提示是在不需要时转动动画材料。神奇的想法,但不解释如何。
当我创建一个材质时,我可以设置material.animated = false
并且它可以工作,但在另一个函数中我无法访问我的基元的材质。像plane.material.animated = false
这样简单的东西会返回一个空异常。那么如何在我的基元上动态打开/关闭动画材料?
答案 0 :(得分:0)
通过API查看这似乎是不可能的。但是,我可以做的是提高性能,删除不可见的对象,例如如果一架飞机完全隐藏在另一架飞机后面,则不要显示(渲染)它。这是我试图用我原来的问题实现的......
我将所有飞机都放在一个阵列中。
//make all the planes invisible. Don't want to render them
for(var i = 0; i< planes.length(); i++)
{
planes[i].visible = false;
}
//show the first plane so we have **something** to see
planes[0].visible = true;
这对我有用,因为我知道一次只能看到一个平面(直到它转换到下一个平面,在这种情况下我会那个平面可见,当当前飞机完成转换时,我隐藏了这一点。