Zer*_*ber 4 javascript 3d html5
我目前正在使用新的Babylon.js框架开发一个小项目.我遇到的一个问题是我基本上有两个网格.其中一个网格应该是背景,另一个应该跟随光标标记您要定位的其他网格的位置.问题是,当我将目标网格移动到光标的位置时,它会在我使用scene.pick时阻止背景网格,从而导致其他网格的位置设置为自身.
有没有办法在使用scene.pick时忽略目标网格,这样我只选择背景网格或者是否有其他方法可以使用?如果没有,那么实现这种功能的步骤是什么,只能通过某些网格进行光线投射?
如果您需要代码示例或任何其他形式的描述,请告诉我.谢谢!
小智 8
好的,这很简单.
所以,我们有两个网格.一个被称为"地面",第二个"光标".如果你只想在地面上挑选,你有两个解决方案:
第一:
var ground = new BABYLON.Mesh("ground",scene);
ground.isPickable = true ;
var cursor = new BABYLON.Mesh("cursor", scene);
cursor.isPickable = false;
...
var p = scene.pick(event.clientX, event.clientY); // it return only "isPickable" meshes
...
Run Code Online (Sandbox Code Playgroud)
第二:
var ground = new BABYLON.Mesh("ground",scene);
var cursor = new BABYLON.Mesh("cursor", scene);
...
var p = scene.pick(event.clientX, event.clientY, function(mesh) {
return mesh.name == "ground"; // so only ground will be pickable
});
...
Run Code Online (Sandbox Code Playgroud)
问候.
| 归档时间: |
|
| 查看次数: |
2970 次 |
| 最近记录: |