控制物体是否运动的逻辑
2016-10-27 10:36
232 查看
先上代码....
代码比较容易懂。我就不做过多的解释了,然后我觉得做成静态类更加方便,如果是继承的话,局限性就太大了,毕竟只是一个控制物体运行逻辑的类,然后改一下某个函数的返回值为bool就可以实现这个物体的执行逻辑了
原文:点击打开链接
using UnityEngine; using System.Collections; public abstract class GameTimeController:MonoBehaviour { public abstract void FixedUpdateGame(); public abstract void UpdateGame(); public abstract void LateUpdateGame(); } public class myGameTimeController : GameTimeController { private static bool isStopGame = false; /// <summary> /// 控制是否暂停 /// </summary> public static bool IsStopGame { get { return myGameTimeController.isStopGame; } set { myGameTimeController.isStopGame = value; } } private static float runTime = 0; private bool isOnTime = false; private static float gameTime = 0; /// <summary> /// 脚本更新间隔 /// </summary> public static float GameTime { get { return myGameTimeController.gameTime; } set { myGameTimeController.gameTime = value; } } void Update() { if(isOnTime ) { UpdateGame(); } } void FixedUpdate() { if(isOnTime =(IsRun())) { FixedUpdateGame(); } } void LateUpdate() { if(isOnTime ) { LateUpdateGame(); } } /// <summary> /// 判断是否到了更新的时间 /// </summary> /// <returns></returns> private bool LateTime() { if (gameTime <= 0) return true; runTime += Time.fixedDeltaTime; if(runTime >=gameTime ) { runTime = 0; return true; } return false; } /// <summary> /// 判断是否暂停 /// </summary> /// <returns></returns> private bool IsRun() { if(!isStopGame ) { //不是暂停的时候,判断是否到了更新时间 if(LateTime ()) { return true; } } return false; } public override void FixedUpdateGame() { } public override void UpdateGame() { } public override void LateUpdateGame() { } }
代码比较容易懂。我就不做过多的解释了,然后我觉得做成静态类更加方便,如果是继承的话,局限性就太大了,毕竟只是一个控制物体运行逻辑的类,然后改一下某个函数的返回值为bool就可以实现这个物体的执行逻辑了
原文:点击打开链接
相关文章推荐
- 方向键配合左ctrl键控制物体运动
- Unity3D学习笔记2-应用脚本控制物体运动
- Unity3d 物体速度、运动的控制——Input.GetAxis、transform.Translate、transform.Rotate、AddForce
- 【计算机动画】实验 路径曲线与运动物体控制 报告
- 移动机器人运动控制的模糊逻辑系统设计
- 物体运动--通过改变transform--键盘控制
- Unity 控制摄像机跟随运动物体
- Unity之一天一个技术点(二)---全局控制物体是否显示
- Shell| 流程控制语句(if)和判断逻辑的几种写法(是否省略test)
- [计算机动画] 路径曲线与运动物体控制(Cardinal样条曲线)
- Unity 通过键盘控制物体运动
- 角色控制-附在物体表面运动-根据表面法线方向
- Unity游戏开发的数学与物理 2 ( 通过键盘控制物体的运动 )
- Unity 控制摄像机跟随运动物体
- Java通过数学函数(抛物线、正弦曲线、椭圆等)控制游戏中物体的运动
- 1.2 通过键盘控制物体运动【键盘输入、斜方向移动、勾股定理】
- Unity 音乐可视化(音乐频谱控制物体的运动)
- 控制物体的运动-第九作坊物理运动引擎介绍
- 通过刚体组件控制物体的运动
- 【计算机动画】实验 路径曲线与运动物体控制 设计