【发布时间】:2020-11-19 17:40:57
【问题描述】:
我目前正在使用 Unity 开发一款 2D 平台游戏。当玩家跳跃时,我会阻止相机跟随他们,以便让玩家看到他们下方的东西。但是,我实现了一个机制,允许玩家在抓住敌人时执行二段跳,而二段跳使玩家跳过屏幕边界。我想知道如何让相机只有在玩家离开某些边界时才能平滑地跟随玩家。我编写了基本的代码,以一种断断续续的方式做到这一点。我将添加 gif 来展示我的游戏当前的行为方式,以及我希望它如何行为的示例。
这是我在相机控制器中编写的代码:
transform.position = new Vector3(player.position.x, 50, -100);
if (player.position.y > 50)
{
transform.position = player.position - transform.forward * camDist + Vector3.up * playerHeight;
}
下面是我的代码现在所做的嵌入 imgur gif:
<blockquote class="imgur-embed-pub" lang="en" data-id="a/houedOV" data-context="false" ><a href="//imgur.com/a/houedOV"></a></blockquote><script async src="//s.imgur.com/min/embed.js" charset="utf-8"></script>
下面是我想要实现的一个示例:
<blockquote class="imgur-embed-pub" lang="en" data-id="a/deg5yeq"><a href="//imgur.com/a/deg5yeq"></a></blockquote><script async src="//s.imgur.com/min/embed.js" charset="utf-8"></script>
【问题讨论】:
-
您好,我看到您正在使用unityscript 标签,请注意这是(如标签信息中所述)Unity 制作的不推荐使用的脚本语言,并且不是一个涵盖 Unity 中所有脚本的术语。你的问题是关于 C# 的。如果您使用实际语言 UnityScript 处理遗留代码,请仅使用此标记。这使问题和标签保持一致:)
标签: c# unity3d game-development