确定 Unity 3D 中的对象位置
我一直在慢慢学习 Unity 3D。我正在尝试制作一个迷宫,并且需要在他们到达终点区域时发生一个事件。
如何获取对象位置并检查它是否位于目标区域?使用 JavaScript。
感谢您的帮助!
I've been learning Unity 3D, slowly. I'm trying to make a maze, and need an event to occur when they reach the finish area.
How do I fetch object location and check if it's in the target area? Using Javascript.
Thanks for any help!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
如果您的结束区域可以视为一个盒子,您可以在结束区域周围的场景中添加一个 BoxCollider,并将其
isTrigger
属性设置为 true。然后,当实体进入该区域时,您将收到对实体上的OnTriggerEnter
的回调,您随后可以使用该回调来结束关卡或执行其他操作。If your end area can be treated as a box, you could add a BoxCollider to your scene around the finish area and set its
isTrigger
property to true. Then you'll get a callback toOnTriggerEnter
on your entity when it enters the area, which you can subsequently use to end the level or whatever.正如 Peter G 在 Unity Answers 中所述:
As Peter G states on Unity Answers:
好吧,如果你所说的目标区域是指终点区域,那么
您可以通过多种方式来做到这一点,
使用碰撞
您可以以简单的方式 :
(1)创建一个平面,创建一个名为“finish”的标签
(2) 然后选择播放器,然后单击检查器中的下拉“标签”。搜索“完成”并选择它。
您还需要向游戏对象添加一个碰撞器。
然后创建一个新的 JavaScript 并向其中添加此代码
或使用此方法
将此脚本放置在您的播放器上。
这个脚本可能就像使用碰撞器来完成你正在做的事情一样神
well if you by target area you mean the finish area then
you can do this in several ways
you can use collides
in a simple way :
(1) create a plane , create a tag named "finish"
(2) then select the player then click the dropdown "tag" in the inspector . search for "finish" and select it .
you will also need to add a collider to your gameobject.
then create a new JavaScript and add this code to it
or use this method
place this script on your player .
this script is probably just as god as using colliders for what you are doing