问答

threejs怎么阻止几何体点击穿透?

作者:admin 2021-04-20 我要评论

我用threejs做了一个地球,在上面放置了一些城市点 鼠标滑过点的时候会变成小手形状并显示它的名称,但是像上图中,城市在地球背面,鼠标滑上去的时候穿透了几何...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

我用threejs做了一个地球,在上面放置了一些城市点
image.png
鼠标滑过点的时候会变成小手形状并显示它的名称,但是像上图中,城市在地球背面,鼠标滑上去的时候穿透了几何体触发了事件,现在想让在地球背面的城市点不触发事件,请问应该怎么做呢?

###

three.js 鼠标划过原理是 从鼠标出发做一条射线,并返回射线与之碰撞的物体集合,越早碰到的物体集合下标越小越靠前,也就是在正面理论上返回集合是:[ 城市,地球 ] ,在反面:[ 地球,城市], 也就是说可以通过判断物体是否在第一个来确定是否为直接碰撞体。

###

设置css

canvas.style.cursor = "default";

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • nginx响应速度很慢

    nginx响应速度很慢

  • 点击选中的多选框,会在已选那一栏显示

    点击选中的多选框,会在已选那一栏显示

  • PHP 多态的理解

    PHP 多态的理解

  • 关于C语言中static的问题

    关于C语言中static的问题

腾讯云代理商
海外云服务器