在游戏地图问题附近导航头像:隐藏在图块中的头像和单击动画

问题描述 投票:0回答:1

我目前正在Unity(2018.4)中从事塔防游戏。我对这个软件和C#非常陌生。现在我有一个化身,可以通过NavMesh平面在游戏屏幕上移动。

下面我的图片中的橙色框显示了透明平面所在的位置。我的游戏地图(棕色和绿色)由纹理图块组成。

enter image description here

enter image description here

我的头像是您在屏幕上看到的灰色东西。我使用NavMeshAgent和一些脚本根据鼠标在游戏地图上的点击位置来移动我的头像。

下面是我的化身运动视频的链接。

https://forum.unity.com/threads/navigating-avatar-around-game-map-issues-avatar-hidden-inside-tiles-click-animation.759737/

我正在尝试以下两个问题的帮助。

1)当我将头像移动到更高的位置(即,更高的瓷砖堆)时,他消失在瓷砖内(请参阅gif)。我希望虚拟化身站在瓷砖的上方或旁边的较低位置。

2)当我单击游戏地图中的图块以指示我的化身移动到那里时,我需要一些点击位置的指示或动画。 (即,在我的鼠标点击位置上出现箭头或圆圈)。

对此的任何帮助将不胜感激。

unity3d navigation avatar navmesh
1个回答
0
投票

在#1上:

请确保您的图块GameObjects具有对撞机。将化身的图层设置为“忽略Raycast”。然后从与化身相同的x和z坐标的点调用Physics.RayCast,但在最高点上方的Y坐标处,可能会到达图块。在通话中设置遮罩,以使“忽略射线广播”层上的GameObjects不会产生匹配。 RayCast将返回一个坐标,您可以从中检索Y值并将其用于化身在图块上的位置。有关调用Raycast的更多信息,请参见-https://docs.unity3d.com/ScriptReference/Physics.Raycast.html

在#2上:

我认为您不应该问两个问题,所以我故意不回答第二个问题。建议您编辑问题以删除问题2。然后只问一个关于堆栈溢出的单独问题。这是一种更好的信息结构方式,以便除您之外的其他人可以从问题的答案中学习。我说的很友好。

© www.soinside.com 2019 - 2024. All rights reserved.