【问题标题】:How can I mirror a gameobject movement in Unity?如何在 Unity 中镜像游戏对象的运动?
【发布时间】:2019-03-09 15:28:49
【问题描述】:

我有两个游戏对象,我希望它们像在图片中一样被放置在对接中,但我希望它们一起移动和旋转,以便它们始终像这样放置。我正在控制黑色物体,所以我只是使用transform.rotation = Quaternion.Euler(0, 0, player.transform.eulerAngles.z + 180); 来获得正确的旋转,但我就是无法获得正确的位置。这是我希望如何放置它们的草图。

在一个方向移动我的黑色对象时,两个游戏对象不会保持连接状态。这是问题的表示。

这里有我的确切脚本和照片: 我用于移动 ai 的脚本:

transform.position = player.transform.position + new Vector3(0, player.transform.localScale.y + transform.localScale.y - 1, 0); transform.rotation = Quaternion.Euler(0, 0, player.transform.eulerAngles.z + 180); transform.parent = player.transform;

以及 Inspector 中的确切照片:

这就是我希望它们始终被放置的方式:https://bugguide.net/images/cache/SL2/ZZL/SL2ZZLPZMLOH6HHRUHRREHVH7HVHZLWZLL6Z7H6Z8H5Z7HEZ5LEZ5H8ZSLAHRL2Z4LBZ7LAZILAZXLGZKL2ZMHAHMH.jpg

[更新] 我使用了@Ali Kanat 的答案,我已经完成了一半: 正如您在图片中看到的那样,两个虫子现在一个接一个,但它们正按应有的方式一起移动。

【问题讨论】:

  • 鳞片明显有问题。只是不要把它分成2它必须解决问题。
  • 我也相信你是 2D 的,所以你应该使用 forward 而不是 up,据我从你的图片中可以理解
  • 没错!还有一件事 transform.right=(-player.transform.right) 不转发
  • 好吧,我说过这取决于你的精灵,你更了解它。

标签: c# visual-studio unity3d position mirror


【解决方案1】:

您可以只使红色对象(或您拥有的任何其他对象)成为黑色对象的子对象并旋转黑色对象。这样您可以保留几何图形,而不必修改其他对象的transformcomponent。

在 cmets 之后,我假设大瓢虫是 Player。以编程方式实现您想要的可以是这样的:

//forward, up or right depends on which direction is the front of your player
transform.position = player.transform.position + ((-player.transform.forward) * (player.transform.localScale.y
        + transform.localScale.y)/2);
transform.forward = (-player.transform.forward);

因为你想要实现的是在玩家后面的方向上找到 (PlayersizeY +enemySizeY) 的位置。无论您的 Player 的方向是什么,这都会起作用。

【讨论】:

  • 是的,但这只会让它按照我喜欢的方式旋转。位置仍然关闭,每次我的黑色物体移动时,它们都没有对齐。我将在我的问题中给出另一种表示。@Ali Kanat
  • 我不确定我是否理解正确,但如果黑色是红色的父级,旋转或平移无关紧要,当您仅移动黑色时,它们将始终附加。如果您移动红色,那当然是行不通的。你只需要修改黑色物体的变换。
  • 我明白你在说什么,但我的两个物体已经一起移动了。他们之间总是有这种“差距”。
  • 你能分享一下你的检查器的屏幕截图和你用来移动它们的脚本吗?
  • 检查问题。我希望他们如何:bugguide.net/images/cache/SL2/ZZL/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-17
  • 1970-01-01
  • 2022-10-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多