現在、Unity3Dでキャラクターの動きに取り組んでいます。私はどうにかして彼をマウスカーソルに対して相対的に移動させました。傾斜制限を45°に設定しました。これにより、キャラクターはより高い角度で山を登ることができなくなります。しかし、彼はまだそれらをジャンプすることができます。
傾斜が高すぎる場所でジャンプしたときに、どうすれば彼を再び滑らせることができますか?
前もって感謝します。
編集:基本的な動きのコードスニペット。UnityEngineを使用します。System.Collectionsを使用します。
public class BasicMovement : MonoBehaviour {
    private float speed;
    private float jumpSpeed;
    private float gravity;
    private float slopeLimit;
    private Vector3 moveDirection = Vector3.zero;
    void Start() 
    {
        PlayerSettings settings = GetComponent<PlayerSettings>();
        speed = settings.GetSpeed();
        jumpSpeed = settings.GetJumpSpeed();
        gravity = settings.GetGravity();
        slopeLimit = settings.GetSlopeLimit();
    }
    void Update() {
        CharacterController controller = GetComponent<CharacterController>();
        controller.slopeLimit = slopeLimit;
        if (controller.isGrounded) {
            moveDirection = new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));
            moveDirection = transform.TransformDirection(moveDirection);
            moveDirection *= speed;
            if (Input.GetButton("Jump")) {
                moveDirection.y = jumpSpeed;
            }
        }
        moveDirection.y -= gravity * Time.deltaTime;
        controller.Move(moveDirection * Time.deltaTime);
    }
}
          
                  詳細情報が必要です:物理を使用していますか?これらの斜面は地形システムなどを使用していますか?キャラクターをコントロールしているコンポーネントは何ですか?これは2Dまたは3Dゲームですか?
                
                
                  
                    —
                    Kylotan 
                    
                  
                
              
                  プレイヤーがジャンプしようとしたとき、またはジャンプを完了してスロープに当たったときにスライドするということですか?
                
                
                  
                    —
                    tyjkenn 
                    
                  
                
              
                  @tyjkennつまり、彼がジャンプを完了したときです。スーパーマリオ64のように、地面に着地し、この地面の角度が高すぎる場合は、角度がslopeLimitと等しくなるまで下にスライドする必要があります。
                
                
                  
                    —
                    ケイナベル2012年
                    
                  
                
              
                  @Kylotanよく、私はUnityの初心者です。だから、私はできる限り良い答えを出すようにしています。キャラクターコントローラーでキャラクターを作成しました-リジッドボディはありません。キーが押されたときに彼を動かし、カーソルに対して相対的に歩くようにしました。地形を作成し、ボタンを使用して(ああ、これは愚かに聞こえるはずです)、山を作成しました。これは、WarCraft IIIのような外観とカメラスタイルの3Dゲームになります。
                
                
                  
                    —
                    ケイナベル2012年