最近不少功能都涉及到用户设置相关的东西, 好比一个沙盘, 但愿在无操做后3秒钟就自动进行相机自动旋转的操做, 代码很简单:json
public class XXX : MonoBehaviour { public float cameraRotateSpeed = 2f; public float waitTime = 3f; private float m_startRunningTime = 0.0f; void Awake(){ ResetStartRunningTime(); } private void ResetStartRunningTime() { m_startRunningTime = Time.realtimeSinceStartup + waitTime; } private void Update() { if(Time.realtimeSinceStartup > m_startRunningTime) { var rotateAngle = cameraRotateSpeed * Time.deltaTime; // ... } } }
但是用户若是想本身能设置这个功能的变量时, 咱们能够怎么作呢? 异步
1. 搞个快捷键? 各类功能都有用户需求的话, 快捷键没那么多. 几十个快捷键没人能记住.spa
2. 作个网页后台进行设置, 而后运行时从远程获取变量? 太麻烦, 并且依赖后台, 并且仍是异步的.设计
3. 在本地写个json文件配置表从里面读取? 对开发不友好, 维护麻烦.code
4. 作个UI面板运行时打开进行设置? 也是过于麻烦. 而且也须要存储数据.blog
而且对于一个已经开发到必定程度的工程来讲, 额外添加的这个需求不能在开发层面要求过多, 且不能影响原有功能的设计.开发
其实就是没有什么好办法, it