max*_*uts 7 javascript webgl three.js
在使用优秀的Sim.js和Three.js库进行WebGL项目时,我偶然发现了下一个问题:
在某个地方,它使用THREE.Ray的下一个构造函数:
var ray = new THREE.Ray( this.camera.position, vector.subSelf( this.camera.position ).normalize() );
Run Code Online (Sandbox Code Playgroud)
vector是Vector3,
这会触发以下错误:
TypeError Object [object object]没有方法subSelf.
我检查了我正在使用的Three.js的文档以及vector3上接近最多这个的方法
.sub( v ) Vector3
Run Code Online (Sandbox Code Playgroud)
我尝试更改此设置并在此调用中显示新错误:
var intersects = ray.intersectScene( this.scene );
Run Code Online (Sandbox Code Playgroud)
这又引发了一个错误,因为当我检查时,ray没有intersectsPlane方法
Ale*_*yne 14
我相信THREE.js api改变了一段时间.
Vector3的subSelf() 是现在根本sub(),因为你发现了.
和Ray的intersectsPlane() 看起来应该是intersectPlane().
如果您想要复杂的场景交集,则可能需要使用Raycaster.文档:http://mrdoob.github.com/three.js/docs/56/#Reference/Core/Raycaster
Three.js文档并不是最好的东西......但是,只需检查源代码就可以获得很多洞察力.
| 归档时间: |
|
| 查看次数: |
4358 次 |
| 最近记录: |