自动行为操控Steering(八)—路径跟随(单体操控)
来源:互联网 发布:手机电影剪辑软件 编辑:程序博客网 时间:2024/06/05 14:35
图示:
实现:
public enum PatrolMode { Once, Loop, PingPong, } ///<summary> ///路径跟随 ///</summary> public class FollowToPathSteering : Steering { /// <summary>巡逻到达的距离 </summary> public float patrolArrivalDistance = 1; /// <summary>路点 </summary> public Transform[] wayPoints; /// <summary>巡逻模式 </summary> public PatrolMode partrolMode = PatrolMode.Once; private int currentWayPoint; private bool IsPatrolComplete; public override Vector3 ComputerFinalForce() { exceptForce = (wayPoints[currentWayPoint].position - transform.position).normalized * speed; //是否到达当前路点 if (Vector3.Distance(transform.position, wayPoints[currentWayPoint].position) < patrolArrivalDistance) { //是否是最后一个路点 if (currentWayPoint == wayPoints.Length - 1) { //多分支 switch (partrolMode) { //单次: case PatrolMode.Once: IsPatrolComplete = true; return Vector3.zero; //往返: case PatrolMode.PingPong: Array.Reverse(wayPoints); break; } } currentWayPoint = (currentWayPoint + 1) % wayPoints.Length; } //移动: //MoveToTarget(wayPoints[currentWayPoint].position, walkSpeed, patrolArrivalDistance); //动画: //fsm.PlayAnimation(fsm.animaParm.Walk); return (exceptForce - vehicle.currentForce) * weight; } }
阅读全文
1 0
- 自动行为操控Steering(八)—路径跟随(单体操控)
- 自动行为操控Steering(二)—靠近(单体操控)
- 自动行为操控Steering(三)—远离(单体操控)
- 自动行为操控Steering(四)—到达(单体操控)
- 自动行为操控Steering(五)—拦截(单体操控)
- 自动行为操控Steering(六)—逃避(与拦截方向相反,单体操控)
- 自动行为操控Steering(七)—避开障碍物(单体操控)
- 自动行为操控Steering(九)—徘徊(单体操控)
- 自动行为操控(Steering)(一)—框架
- 自动行为操控Steering(十)—聚集(群体操控)
- 自动行为操控Steering(十一)—分散(群体操控)
- unity3d AI 学习--个体行为操控(1)--具体行为类(3)-路径跟随和躲避障碍
- unity3d AI 学习--个体行为操控(1)
- unity3d AI 学习--个体行为操控(1)--具体行为类(1)
- unity3d AI 学习--个体行为操控(1)--具体行为类(2)
- (2)PX4开发指南——飞行模式/操控
- 计算机体系结构原理——数据操控(CPU工作原理)
- 防止路径操控,命令注入
- x.25,帧中继,RF,以太网,ATM分别是什么
- demo3,函数接收参数并弹出,总结
- 用vue实现简易的音乐webApp
- Java 自动按键,以及cmd脚本调用
- 自定义控件 类型编辑器
- 自动行为操控Steering(八)—路径跟随(单体操控)
- Eclipse中的动态web项目,项目上报错,有红叉,但是展开项目,找不到哪里报错
- nginx+tomcat
- 【POJ】3641
- 开始写博客了???记录下学习的过程吧
- Tensorflow实现卷积神经网络
- Networking Overview
- Start 1
- 深入理解线程局部变量:ThreadLocal