我在想,对于一些项目我做60fps并不是完全需要的.我想我可以有更多的物体和物体以30fps运行,如果我能让它以该帧速率平稳运行.我想如果我在three.js中编辑了requestAnimationFrame垫片,我可以将它限制为30.但是我想知道是否有更好的方法来使用提供的three.js本身.此外,这会给我带来我正在思考的性能提升.我能以30fps的速度渲染两倍于60fps的物体吗?我知道在30和60之间运行的东西之间的区别,但是我能够以平稳的恒定30fps运行吗?
我通常使用WebGLRenderer,如果需要,可以回退到Canvas,除了专门针对一个的项目,通常是webgl着色器项目.
我已经通过ColladaLoader成功导入了.dae场景.
问题是,我需要在几个.dae文件之间切换.
我似乎无法正确实现dispose方法.
dae.traverse(function(obj) {
console.log('unloading ' + obj.id);
scene.remove(obj);
if(obj.geometry)
obj.geometry.dispose();
if(obj.material)
obj.material.dispose();
if(obj.mesh)
obj.mesh.dispose();
if(obj.texture)
obj.texture.dispose();
});
scene.remove(dae);
Run Code Online (Sandbox Code Playgroud)
我可能做错了什么?
非常感谢提前!
编辑:
这是整个代码.
var renderer = null;
var scene = null;
var camera = null;
var controls = null;
var dae = null;
//var loader = null;
function init() {
renderer = new THREE.WebGLRenderer( { alpha: 1, antialias: true, clearColor: 0xffffff } );
renderer.setSize( 800, 600 );
var elem = $('.main3d')[0];
elem.appendChild( renderer.domElement );
scene = new THREE.Scene();
camera …Run Code Online (Sandbox Code Playgroud)