第一人称视角的摄像头
-
预备知识
介绍
许多 3D 游戏让玩家采用“第一人称视角”,就好像自己在虚拟世界中漫游一样。玩家可以使用鼠标控制观看世界的方向和角度。你可以在创益编程平台中轻松创建这样的体验。
使用追踪摄像头的新方法
要创建“第一人称视角“,你其实只需要使用追踪摄像头,但是采用一个新的用法。
回顾一下,在使用追踪摄像头的时候,我们首先需要有一个目标物体(如化身或者赛车),然后添加追踪摄像头来跟随该目标。这是一个常见的例子:
当运行这个程序时,玩家可以用鼠标转动摄像头从不同的角度观看这个化身,所以玩家感觉自己不是那个化身,而是跟在化身后面的傍观者。
要想从化身自己的视角看这个世界, 最直接的方法就是把摄像头移动到化身眼睛的地方。为此,我们需要将摄像头和化身之间的距离更改为 0 或者一个很小的数值。此外,如果化身的身高是 100 个单位,我们可以假设它的眼睛距离地面大约 86 个单位,因此我们将“z 位移”设置为 86,让它保持在视线水平。
现在,如果我们再运行这段程序,我们的摄像头就出现在化身的头里面了,所以我们正好看到化身的眼睛的背面:当然,这时候化身的头挡住我们的摄像头,所以我们看不到其他任何东西。要解决这个问题,我们只需要把化身隐藏起来:
现在我们得到了一个完美的第一人称视角。当我们用鼠标转动摄像头时,我们不再看到化身,而是看它周围的场景。
使用转换器,而不是物体
除了化身或汽车之类的物体,你还可以选择使用“转换器”物体作为摄像头的追踪目标。由于转换器是不可见的,你不再需要隐藏它,而且它的加载速度比化身快得多。但是,你需要先将转换器移动到合适的高度。
你将获得与前一种方法相同的第一人称视角的效果。
将鼠标指针锁定
在上面的程序中,要转动相机,我们必须按下鼠标按钮并在舞台上拖动指针。但是,很多时候玩家需要用鼠标按钮做别的交互动作,如选择或者射击,所以我们需要一个别的方式来控制摄像头的方向。
因此,我们可以“锁定鼠标指针”,让摄像头随着鼠标指针转动,而且玩家无需按下任何鼠标按钮。
你可以使用以下积木来锁定或解锁鼠标指针。选择“是”来锁定,选择“否”来解锁。
例如,让我们将它添加到上面的程序中:
现在,如果你单击绿色旗帜按钮运行程序,鼠标将被锁定:指针将被隐藏,摄像头将随着你移动鼠标而转动。请注意,你可以随时按键盘左上角的“ESC”键来解锁鼠标指针。之后,如果你单击舞台上的任意位置,鼠标将再次被锁定。
使用“开始”按钮来触发鼠标指针锁定
通常情况下,使用按钮控件来触发鼠标指针锁定对玩家更加友好。玩家可以选择何时进入锁定模式,而且当进入锁定模式时,鼠标指针的起始位置就是玩家点击按钮的位置(一般是舞台中央)。
这是一个示例程序。单击“开始”按钮时,我们首先隐藏该按钮,然后锁定指针:
这样的话,鼠标指针只有在玩家点击开始后才会被锁定: -