我需要在从dat.GUI接收值后更新颜色.但是这个
var colored = new THREE.Color(value.replace("#","0x"));
Run Code Online (Sandbox Code Playgroud)
抛出此警告"THREE.Color:未知颜色0x002dff"并且"有色"未更新.
value =#002dff(当时,它一直在变化,用户输入)
编辑:我知道我可以使用它作为"THREE.Color(#002dff)",但颜色在运行时根据我使用dat.GUI创建的控件的用户输入而改变,所以我不会知道可以添加到代码中的实际值.
PS:这是replace()导致问题的原因.它已经解决了.
我需要将光线从场景中的一个对象投射到另一个对象。
是否可以在 Three.js 中执行此操作,因为我在最初的搜索中找不到任何内容。
即使将它从对象投射到原点(0,0,0)对我来说也有用。
提前致谢。
我这样做是为了将光线从物体投射到原点。
var origin = new THREE.Vector3( 0,0,0 );
var pos = mesh.position.clone().sub( origin );
pos.normalize();
raycaster.set( mesh.position , pos.normalize() );
var intersects = raycaster.intersectObjects( scene.children );
for ( var i = 0; i < intersects.length; i ++ ) {
intersects[i].object.material.color.setHex( 0xffffff );
}
Run Code Online (Sandbox Code Playgroud)