Ale*_*ius 0 javascript render three.js
我正在制造一些敌人,我希望他们所有人在渲染之前更新他们的位置。
我可以创建一个 update() 函数,但我已经尝试将 onBeforeRender() 函数附加到所有这些函数上。
问题是什么都没有发生。
这是我的代码,我不知道它在哪里失败。
var i = 0;
for(i =0; i < num_enemics; i++ ){
//CLONE THE ENEMY FROM THE PROTOTYPE
var enemic = dolent.clone(true);
enemic.name = i.toString();
enemic.visible = true;
//SPAWNS ON RENDER POSITION
enemic.position.x = Math.random() *(40) - 20;
enemic.position.y = 0.7;
enemic.position.z = Math.random() * (28) - 14;
self.veloicity = new THREE.Vector3(0.1,0,0);
//FUNCTION TO BE CALLED BEFORE RENEDER
enemic.onBeforeRender(function(){
self.position.addVectors(self.position,self.velocity);
});
scene.add(enemic);
}
Run Code Online (Sandbox Code Playgroud)
这是定义时要遵循的模式onBeforeRender:
object.onBeforeRender = function( renderer, scene, camera, geometry, material, group ) {
// your code here
this.position.add( this.velocity );
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2588 次 |
| 最近记录: |