我想知道爲什麼你需要完整的Object3D作爲目標而不是Vector3?在我看來,目標的角色只是設置錐體的方向。 Object3D能否比原始Vector3帶來更多的SpotLight操縱魔法?爲什麼SpotLight在three.js中定位Object3D?
1
A
回答
2
因爲陰影映射需要作爲其平截頭體的參考。然而,我正在等待刪除它,並在光線中使用距離屬性。
0
聚光燈有位置,方向矢量,顏色,強度,角度,下降。這些僅用於着色器內的計算以確定某個片段點亮了多少。
它可能並沒有什麼特別的魔力,它只是Object3D類有它的屬性.target,而Mesh和SpotLight類(實際上繼承Object3D)都使用這個屬性,但用於不同的計算和有點不同的方式。 Target屬性也被用於的lookAt矩陣網格和聚光燈,你可以通過做計算方向向量:
vec3 dir = targeted_3d.position - spot_light.position;
它是關於重新使用已繼承的屬性,並給它的孩子稍有不同的使用 - 班。
希望這會有所幫助。
相關問題
- 1. Three.js - SELECTED SpotLight&dat.gui
- 2. Three.js Object3d兒童lookAt相機的位置
- 3. Three.js light object3d和tween
- 4. 在Three.js中更改Object3D的中心點?
- 5. Three.js-克隆一個Object3D組?
- 6. three.js Object3D本地位置與全球位置
- 7. 訪問three.js object3D中的A-Frame元素
- 8. three.js使用raycaster.intersectObject選擇Object3D的子代
- 9. 如何使用three.js拖放Object3D元素?
- 10. Three.js更新Object3D的孫子的旋轉
- 11. 在three.js中定位網格
- 12. 將子節點/對象附加到three.js中的Object3D中
- 13. Three.js - 如何在帶有子項的Object3D上使用BoxHelper?
- 14. 將three.js容器定位爲html div
- 15. three.js;無法讀取未定義的屬性「位置」,也不知道爲什麼
- 16. 如何更改THREE.js中的SpotLight shadowCameraNear參數?
- 17. 點SpotLight在相機的方向three.js(手電筒)
- 18. 爲什麼Spotlight有時不運行我的查詢?
- 19. Three.js - 爲什麼csg.js不工作?
- 20. 在Autodesk Forge查看器中對Three.JS Object3D網格進行光線投射
- 21. Three.js wireframehelper組內壞定位
- 22. Three.js:導致Object3D平行於我的相機的X軸行進
- 23. three.js - 對象不是THREE的一個實例。Object3D
- 24. Three.js如何將Object3d的子點指向相機?
- 25. 任何方式從three.js Object3D獲取邊界框?
- 26. 爲什麼照明在Three.js中不起作用?
- 27. 爲什麼在NetBeans IDE中three.js不適合我?
- 28. 爲什麼在PHP中按位〜0 = -1?
- 29. 爲什麼定位divs重疊?
- 30. 爲什麼選擇HTML5地理定位?
我在Object3D和Mesh中都沒有看到.target屬性。 – 2013-05-11 10:46:25