gpt4 book ai didi

c# - 在斜坡上以相同的速度移动球 - Unity 3D

转载 作者:行者123 更新时间:2023-11-30 17:28:48 25 4
gpt4 key购买 nike

我想在进入的斜坡上移动球,就像它在平原上移动一样。目前,根据玩家体验,当斜坡开始时,球速会降低,因此整体球运动会减少。

我希望它在地面或崎岖不平的地方移动时保持相同的速度。

虽然下图我试图解释我的问题: enter image description here

这是我使用的代码片段:

void FixedUpdate ()
{

if (!GameManager.Instance.IsGameRunninng) {
myRigidBody.velocity = Vector3.zero;
return;
}

if (isJumper) {
isJumper = false;
myRigidBody.AddForce (Vector3.up * 35f, ForceMode.Impulse);
}

isGrounded = Physics.Raycast (rayTransform.position, Vector3.down, 0.5f, groundMask);

Vector3 nextVelocity = myRigidBody.velocity;
nextVelocity.x = ballInputHandler.horizontalInput * smoothnessX;

if (!isGrounded) {
nextVelocity.y -= speed * 0.3f;
} else {
nextVelocity.y = 0;
nextVelocity.z = speed;
}

myRigidBody.velocity = Vector3.Lerp (myRigidBody.velocity, nextVelocity, smoothnessValue * Time.fixedDeltaTime);

ClampingBallMovement ();

}

希望你能正确理解我的问题,给我一些建议,这样我就能从这个问题中走出来。

最佳答案

调整完 nextVelocity.y 组件后:

    myRigidBody.velocity = nextVelocity.normalized * desiredSpeed;

关于c# - 在斜坡上以相同的速度移动球 - Unity 3D,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52073587/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com