Unity高级——状态机——有限状态机二

来源:互联网 发布:欠淘宝消防保证金 编辑:程序博客网 时间:2024/05/09 04:49

Unity高级——状态机——有限状态机二


在Unity高级——状态机——有限状态机中,我们对状态机的整个过程有了概念性的了解,接下来,就让我们来用一个实例,来实现灯泡开关控制这个效果!


为了能实现更明显的效果,我们删除默认的光源——添加一个Point Linght点光源,然后条件点光源的位置和大小。

如果要实现开关的效果,我们对intensity进行控制!

 

准备工作做好之后,接下来我们添加一个脚本,用来控制灯光——灯光控制器!

当按下键盘的O键 灯打开,当按下键盘的C键灯关闭。

首先我们新建一个C#脚本——命名为LightController

 

双击新创建的LightController——进入代码界面

using UnityEngine;using System.Collections;public class LightController : MonoBehaviour {    private Light _light;    void Awake(){        _light = GetComponent<Light> ();    }    void  Update(){        //当前的脚步就是状态机        //用户按键时间就是状态切换的条件——事件        if(Input.GetKeyDown(KeyCode.O)){            //灯的光强从0变为1时,就是状态的过渡            //打开灯            //灯开着的状态            _light.intensity=1f;            }        if(Input.GetKeyDown(KeyCode.C)){            //灯的光强从1变为0时,就是状态的过渡            //关闭灯            //灯处于关着的状态            _light.intensity=0f;                }    }}


 

 

1 0
原创粉丝点击