首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >点击3d游戏对象上的3d世界统一

点击3d游戏对象上的3d世界统一
EN

Stack Overflow用户
提问于 2017-03-06 07:06:46
回答 2查看 7.8K关注 0票数 0

我正在地图上填充3d标记。下一个目标是检测正在单击哪个标记。附加UI按钮与每个标记,但这不是一个好办法。有人能提出更好的建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-06 07:11:23

你的标记有对撞机吗?如果是这样的话,那么您可以在附加到游戏对象的脚本组件中使用OnMouseDown函数,只要它有对撞机组件。

否则,您可以使用http://answers.unity3d.com/questions/34795/how-to-perform-a-mouse-click-on-game-object.html中的这个片段

代码语言:javascript
运行
复制
function Update ()
{
     if ( Input.GetMouseButtonDown(0))
     {
         var hit : RaycastHit;
         var ray : Ray = Camera.main.ScreenPointToRay (Input.mousePosition);

         if (Physics.Raycast (ray, hit, 100.0))
         {
             // handle mouseclick
         }
     }
 }
票数 1
EN

Stack Overflow用户

发布于 2017-03-06 07:13:26

您可以在游戏对象中附加对撞机并使用Physic.RayCast进行检测:

代码语言:javascript
运行
复制
https://docs.unity3d.com/ScriptReference/Physics.Raycast.html
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42619479

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档