问题描述
我正在尝试制作一个与“立方体冲浪者”具有类似堆栈机制的游戏。 我创建了一个名为 stacks 的空游戏对象,并将其设为玩家的子对象。 在我的项目中,理论上当玩家与盒子碰撞时,盒子应该在玩家下方产生。 但会发生什么video 当玩家碰撞时,它会将盒子移动到玩家下方但在地面内,盒子不会将玩家向上推,因此玩家可以站在它上面。 当我将堆栈游戏对象移动到玩家旁边而不是它下面时(从(0,-0.5,0)到(1,0)) video 堆叠正在工作
请帮助你的兄弟解决这个问题。他该怎么办? 将它们作为 childobject 是个坏主意吗?如果是怎么办?请指导我谢谢。
我的代码
private void OnTriggerEnter(Collider other)
{
if (other.gameObject.CompareTag("Pickup"))
{
Transform otherTransform = other.transform;
Rigidbody otherRb = otherTransform.GetComponent<Rigidbody>();
otherRb.isKinematic = true;
other.gameObject.GetComponent<BoxCollider>().isTrigger = false;
if (parentPickup == null)
{
parentPickup = otherTransform;
parentPickup.position = stackPosition.position;
parentPickup.parent = stackPosition;
}
else
{
parentPickup.position += Vector3.up * (otherTransform.localScale.y) ;
otherTransform.position = stackPosition.position;
otherTransform.parent = parentPickup;
}
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)