0
私は、シリンダーまたはカプセルの中の重力に苦しんでいます。基本的に私は球状重力と同じコードをとることができると思っていましたが、これはうまくいきません。だから私は良い結果を得るためにいくつかの行を変更しました。ユニティ:Faux Gravity - 内側のカプセル/シリンダー
[SerializeField] float gravity = 10;
public void Attract (Transform target)
{
Vector3 gravityUp = (target.position - new Vector3(transform.position.x, transform.position.y,target.position.z)).normalized;
Vector3 bodyDown = -target.up;
Rigidbody rb = target.GetComponent<Rigidbody>();
rb.AddForce(gravityUp * gravity);
Quaternion targetRotation = Quaternion.FromToRotation(bodyDown, gravityUp) * target.rotation;
targetRotation.x = 0;
target.rotation = Quaternion.Slerp(target.rotation, targetRotation, 30.0f * Time.deltaTime);
}
これは最初の試行で問題なく動作しました。しかし、プレイヤー(ターゲット)はY軸を回転させることはできません。誰にもアイデアはありますか?