Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 尝试在unity 3D中冻结摄影机位置_C#_Unity3d_Camera_Rotation_Game Development - Fatal编程技术网

C# 尝试在unity 3D中冻结摄影机位置

C# 尝试在unity 3D中冻结摄影机位置,c#,unity3d,camera,rotation,game-development,C#,Unity3d,Camera,Rotation,Game Development,我试图让相机跟随unity 3D中的球员我将相机连接到球员身上,但它也随着球员旋转,因为他是一个球我不希望发生这种情况我在相机上添加了一个刚体它曾经工作过一次IDK,但后来它停止跟随他,因为刚体有任何帮助吗???所以你把你的相机变成了一个孩子你的球员?如果是这样,相机将继承玩家身上的所有变换,这绝对不是你想要的。您可以跟随此视频学习摄影机跟随脚本 你几乎不需要在相机上放置刚体,所以你可以移除它。正如克里斯托弗所说,子对象总是继承父对象的变换。因此,如果球在世界上滚动,你的相机也会旋转(在本例中由

我试图让相机跟随unity 3D中的球员我将相机连接到球员身上,但它也随着球员旋转,因为他是一个球我不希望发生这种情况我在相机上添加了一个刚体它曾经工作过一次IDK,但后来它停止跟随他,因为刚体有任何帮助吗???

所以你把你的相机变成了一个孩子你的球员?如果是这样,相机将继承玩家身上的所有变换,这绝对不是你想要的。您可以跟随此视频学习摄影机跟随脚本


你几乎不需要在相机上放置刚体,所以你可以移除它。

正如克里斯托弗所说,子对象总是继承父对象的变换。因此,如果球在世界上滚动,你的相机也会旋转(在本例中由刚体/物理控制)

为了使摄影机跟随场景中的任何对象,您可以为摄影机使用单独的游戏对象,该游戏对象跟随由简单脚本控制的玩家对象。-例如,类似这样的内容(从中修改的示例):

使用UnityEngine;
公共课:单一行为
{
公共转型目标;
公共浮动平滑时间=0.3f;
公共矢量3偏移=新矢量3(0.0f,5.0f,-10.0f);
专用矢量3速度=矢量3.0;
无效更新()
{
//在目标变换的上方和后方定义目标位置
Vector3 targetPosition=目标转换点(偏移);
//平稳地将相机移向该目标位置
transform.position=Vector3.SmoothDamp(transform.position,
目标位置、参考速度、平滑时间);
//使相机指向目标
变换。注视(目标);
}
}


(这是一个非常基本的问题,以前已经回答过很多次了。你可以通过搜索网页很容易地找到许多类似的例子。-而且帖子的标题与问题并不完全匹配。找到正确的词语和提示对于保持网站正常运行很重要(清晰的技术问题->清晰的答案)。)

Thx感谢您的时间,我遵循了教程,它成功了!我试过了,但它似乎对我不起作用,相机只是不断地上下移动。为什么。嗨!我已经修改了上面的脚本并添加了LookAt()调用,也许这样可以解决问题?如果玩家对象移动,相机应始终将自身置于目标/玩家的后面,偏移现在可在检查器中调整(y->玩家上方的世界单位,z->玩家后方的单位)。-在播放模式下,您可以在场景视图中观察摄影机对象,如果需要,还可以继续调整设置。。。我希望这有助于开始你的项目!