Nico Game Studio 1.基本UI和地图编辑基础功能
完成了基本界面.
本来想自画UI,但是考虑到工作量较大和美观程度有限,以及工具使用对象是比较初级玩家,处于性价比和最初目的,放弃了自绘.
虽然个人比较喜欢黑色,但是工具开发来是给大家用的,而且面向初级使用者,所以还是比较简单界面容易上手.
于是变成这样.
这里的树view还是自绘了一下,原来+号不适用.
目前进度比较慢.
总是做一步要想很多,后面是否会需要修改地方,怎么样做最优.
对于初学游戏开发者,这样的界面应该比较习惯,接受快把.
目前完成内容:
1.基本UI框架,地图增删改
2.编辑单个地图的格子绘制,还不能添加纹理什么的.
3.地图编辑视口的镜头控制.
说一下目前用到的设计思路.
大的框架是:组件模式.由各种控件拼凑在一个主窗口中,每个自定义控件完成一个单独的功能,视为一个组件.
也是View层.
Model层包含了所有工程文件需要保存的数据.用C#自带序列化功能来保存.
因为逻辑代码相对来说不是很复杂,于是都放在了View控件下了,没有分一个逻辑层出来.
于是乎,View->事件->view代码中进行业务处理->更新Model->发送数据更新通知->由各接收方订阅事件并处理.
类似主动MVC模式.
有个比较妙的地方分享一下:我学angular的实现了Control所有子控件值和Model之间的双向绑定.
原理也很简单,就是遍历所有子控件和反射创建对象.
于是一个From里的所有填写内容,一句代码就获得了Model对象,反之也是.
这个工具的意义是:
让不会写代码的人,很轻松开发一个2D桌面游戏.
所有功能都尽量易用.