我在 2D 游戏的移动平台上为角色育儿而苦苦挣扎。
当玩家踏上移动平台时,我正在使用 OnTriggerEnter2D() 进行检测。它改变了他的父母到那个平台。使用普通的移动平台(左右)一切正常,如果一个角色站在该平台上,他会与之平行移动,他可以行走、跳跃等。当我使用悬挂在与 HingeJoint2Ds 连接的两条绳索上的平台时,就会出现问题。玩家应该通过左右行走来摆动该平台。当使用键盘输入时,一切正常,但使用触摸输入控制器时,当玩家不移动时,角色会留在一个地方并且不会随着该平台移动。在层次面板中一切都是正确的,玩家是平台的孩子,平台在移动,但角色没有。
对于移动角色,我正在使用这个:(角色控制器的一部分)
float move = Input.GetAxis ("Horizontal”);
rigidbody2D.velocity = new Vector2 (move * maxSpeed, rigidbody2D.velocity.y);
键盘和触摸输入也是如此。不同之处仅在于“移动”变量的获取。移动和摆动平台的解决方案也是相同的。(层次结构,父母,对撞机等)
我为此苦苦挣扎了几个小时,但我不知道可能出了什么问题。
谢谢你的帮助。