最近一年都在为公司卖力,基本上没搞什么自己的玩意儿。上个月开始写场景编辑器,使用qt。写到一半,越写越想直接写个游戏编辑器【这里仅指客户端】。于是乎,思路被无形的在大脑里重构了N次。但只是朝着一个方向发展,更好用。
经过一番“考察”,包括主流的游戏内容编辑器及开源的场景编辑器等。
目前,我定义的好用包括以下几点:
1. 操作、资源整合等更方便
2. 代码、逻辑更明了
3. 模块化、更低的耦合度、易于扩展
4. 代码升级方便[考虑到会使用很多开源库及引擎]
5. 暂时还没想到。。。
其实,做项目,代码一定要漂亮,思路一定要清晰。但决不能太漂亮了,比如,老是搞些华而不实的模式或古怪的概念。其实,原则永远只有一个,实用。现在实用,将来也要实用。朝这个方向不断努力就行了。
从上周开始,又有了一个新的想法。先搁下这个东东,因为有些概念我还不能找到最佳解决方案。先从最简单的开始,写个统一的游戏界面开发工具。由于使用CEGUI时,没有个统一可靠的编辑工具[CE官方的那两个太简陋了,越用越累。看了下它的代码,很少,很乱。顿时丧失了重构的信心]。或许是由于团队资金问题吧,CE本人也开始重做一个界面工具,估计明年出来,使用pyqt,适当收费。
自己写的话,还是有很多好处的,首先工作量并不很多,最重要的是可以随时按需求来增删各种功能。
除了继承CE官方工具的“可以吸收”的特性之外,我决定添加如下功能或特性:
1. 控件操作模式:绝对、相对、冻结
2. 支持各种多选对齐方式
3. 添加undo/redo
4. 支持资源路径及属性配置文件[比CE多点信息]
5. 整合layout&imageset&looknfeel&animation等各种界面编辑
项目从上周刚开始,目前还在开发当中。进度得看接下来工作的繁忙程度。先贴几张效果图: