标签:
由于需要快速开发
在拿到需求时,并没有时间去学习Cocos2d-JS\Egret\lufy legend这样的H5游戏引擎
于是硬着头皮直接用js建模、响应用户、渲染画面
在此要感谢这篇文章http://www.lostdecadegames.com/how-to-make-a-simple-html5-canvas-game/给我的启发
然后我罗列一下开发过程中遇到的问题,以便更好地完善自己的游戏框架
1.按钮问题dom vs canvas
有时候有代码洁癖,会觉得用canvas做代码看起来干净
实际上
直接用常规dom里的按钮会比在canvas里写按钮快得多
也有缺点就是要绑定场景...这个概念
但是因为自带了onclick这样的事情,省去了你建模,写碰撞检测代码的时间
2.思路总结
按照之前Matt Hackett的思路
小游戏开发简而言之就是对于每一帧,处理输入,处理,输出的过程
然后这只是对应一个场景
当需要频繁变化场景的时候,这个思路就需要扩充了
两个思路:
A.用一个flag来标记各场景,分别在input update render函数里根据这个flag路由
B.我们抽象出场景对象的概念
每个场景都有它的input/update/render的方法
new一个场景,就重写它的三种方法
就像演舞台剧一样,你是导演,可以随时喊cut or move on
并且做好各个场景之间衔接工作
强A干不过挂BT.T我选B
于是我们因此需要抽象出“舞台”这个概念,也就是我们定义全局变量的地方
3.场景的开发思路
A.建模:分两块,obj模型和皮肤(图像,声音,当然偶尔可能会有视频)
B.保存用户输入:这个有待商榷,其实可以在“舞台”保存所有剧本可能用到的用户操作,然后由导演来决定在哪些场景,演员要与观众互动,哪些场景可以“耍大牌”
C.更新模型:处理事件更新模型,分为模型固有事件(比如人的生老病死)和用户事件(比如被人OOXX)
D.绘图
to be countinued...
标签:
原文地址:http://www.cnblogs.com/AlexNull/p/4786239.html