zoukankan      html  css  js  c++  java
  • Unity 角色控制器 Charactor Controller

    Charactor Controller(角色控制器)

    “ 角色控制器允许你在受制于碰撞的情况下很容易的进行运动,而不用处理刚体。

     角色控制器不受力的影响,仅仅当你调用 Move 函数时才运动。

     然后它将执行运动,但是受制于碰撞。"

                                                  --- From Unity3d 官方文档

    我们通常在人物模型上加上这个组件后,就可以控制模型的移动了

    要注意的一点是:加了角色控制器后,他就不受重力影响

    所以要自己在move函数中处理重力的情况

    即我们要自己出来y轴方向上的速度变化

    Charactor Controller 组件参数

    Slope Limit 爬坡限制:小于等于此角度可以上坡

    Step Offset 台阶高度

    Skin Width 皮肤宽度:太大就抖动,太小就卡住,最好设置成 Radius 半径的10%

    Min Move Distance 最小移动距离:0,太多不行,太小动不了

    Center:中心点坐标

    Radius:半径,一般0.5

    Height:高,一般2.0

    Charactor Controller 测试

     1 using UnityEngine;
     2 
     3 public class CharactorControllerTest : MonoBehaviour
     4 {
     5     public float speed = 6.0F;
     6     public float jumpSpeed = 8.0F;
     7     public float gravity = 20.0F;
     8     private Vector3 moveDirection = Vector3.zero;
     9 
    10     void Update()
    11     {
    12         CharacterController controller = GetComponent<CharacterController>();
    13         if (controller.isGrounded)
    14         {
    15             moveDirection = new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));
    16             moveDirection = transform.TransformDirection(moveDirection);
    17             moveDirection *= speed;
    18             if (Input.GetKeyDown(KeyCode.Space))
    19                 moveDirection.y = jumpSpeed;
    20         }
    21         moveDirection.y -= gravity * Time.deltaTime;
    22         controller.Move(moveDirection * Time.deltaTime);
    23     }
    24 }

    运行效果:

    *** |  以上内容仅为学习参考、学习笔记使用  | ***

  • 相关阅读:
    hdu 1042 N!
    hdu 1002 A + B Problem II
    c++大数模板
    hdu 1004 Let the Balloon Rise
    hdu 4027 Can you answer these queries?
    poj 2823 Sliding Window
    hdu 3074 Multiply game
    hdu 1394 Minimum Inversion Number
    hdu 5199 Gunner
    九度oj 1521 二叉树的镜像
  • 原文地址:https://www.cnblogs.com/ChenZiRong1999/p/13395132.html
Copyright © 2011-2022 走看看