zoukankan      html  css  js  c++  java
  • AI运动的基类

     1 using UnityEngine;
     2 using System.Collections;
     3 
     4 public class Vehicle : MonoBehaviour 
     5 {
     6     //行为列表
     7     private Steering[] steerings;
     8     //这个AI角色的最大速度
     9     public float maxSpeed = 10;
    10     //这个AI角色的最大力
    11     public float maxForce = 100;
    12     //速度平方提前存起来节省资源
    13     protected float sqrMaxSpeed;
    14     //质量
    15     public float mass = 1;
    16     //速度
    17     public Vector3 velocity;
    18     //转向速度
    19     public Vector3 damping = 0.9f;
    20     //操纵力的时间间隔
    21     public float computeInterval = 0.2f;
    22     //是否在二位平面上,如果在 计算两个GameObject的距离时忽略Y
    23     public bool isPlanar = true;
    24     //计算得到的操控力
    25     private Vector3 steeringForce;
    26     //加速度
    27     protected Vector3 acceleration;
    28     //计时器
    29     private float timer;
    30 
    31     protected void Start()
    32     {
    33         steeringForce = new Vector3 (0,0,0);
    34         sqrMaxSpeed = maxSpeed * maxSpeed;
    35         timer = 0;
    36         steerings = GetComponent<Steering> ();
    37     }
    38 
    39     void Update ()
    40     {
    41         timer += Time.deltaTime;
    42         steeringForce = new Vector3 (0,0,0);
    43         if(timer > computeInterval)
    44         {
    45             //将所有行为所附加的操纵力求和
    46             foreach(Steering s in steerings)
    47             {
    48                 if(s.enabled)
    49                 {
    50                     steeringForce += s.Force*s.weight;
    51                 }
    52             }
    53             steeringForce = Vector3.ClampMagnitude(steeringForce,maxForce);
    54             acceleration = steeringForce / mass;
    55             timer = 0;
    56         }
    57     }
    58 }
  • 相关阅读:
    运算符的一些运用规则
    “?:”练习(24小时计时转换12小时计时)
    if条件语句练习(相亲)
    练习
    理解PHP 依赖注入|Laravel IoC容器
    yiibooster+bsie
    PHP dirname() 函数 __FILE__ __DIR__
    per-project basis
    Setting composer minimum stability for your application
    修改mysql的root密码
  • 原文地址:https://www.cnblogs.com/Akishimo/p/5057542.html
Copyright © 2011-2022 走看看