我是THREE.js的新手.
我试图在Canvas中鼠标点击对象(不是简单的对象:Box,Sphere,..)来获得点的3D坐标.
详细地说,我正在使用3D对象查看器 - 我有摄像头(THREE.PerspectiveCamera),鼠标控件(旋转,缩放,移动),添加/删除对象(我自己的对象,使用加载器为THREE.js加载)在场景中,..我想添加一个函数,它可以获得3D中点击点的3D坐标.
确切地说,我想要一条光线终点的坐标 - 从鼠标点击camera_near_window开始到结束对象的点,我点击了..
我尝试了很多方法:
在z = 0平面上获得点的坐标 - 它工作正常,但它在z = 0平面上并且它不是我需要的,因为我有OrbitControls ..
THREE.js示例 - 可点击的对象 - 它使用CanvasRenderer(不是WebGLRenderer)并且适用于一些小对象(但适用于我的项目):当我加载许多对象时,浏览器崩溃(CanvasRenderer需要比WebGLRenderer多5倍的内存).
"如何从鼠标点击坐标获取WebGL 3d空间中的对象" - 我也尝试了这个,但raycaster.intersectObjects没有发现,intersects是一个空数组(也许它只适用于像box,sphere,......这样的简单对象).
任何人都可以给我看一下3D点击对象点击点的3D演示代码,请...?
three.js ×1