状态机
1 .把一个角色的所有状态分为一些state,根据state来决定展示什么,一个reder函数再update里面一直根据state来调用对应的函数来改变状态
2 .特别需要及时响应的操作,可以加再这个render里面,比如人物根据玩家当前的输入来控制,这种情况下,检测玩家输入只能放在render里面实现
3 .一些不受控制,纯展示的东西,根据时间来决定渲染的也放在render里面,比如页面上随风飘动的叶子
4 .也就是说,只有键盘,鼠标监控这些,需要逐帧更新,循环处理.不要什么都往update里面塞。大多都是要事件触发的。
事件触发
1 .对象触发了某个事件,改变状态。比如一个玩家的血条,当血条收到了damage 函数之后,就需要改变他的值,进行一个draw改变
2 .这种情况下,如果我们一直用上面的状态机,那么场景内的元素越多,我们就需要再update里面加对应的函数,并且这种情况的化,即使没有变化也会一直再rende。
网友评论