首页
学习
活动
专区
工具
TVP
发布

逍遥剑客的游戏开发

专栏成员
306
文章
350776
阅读量
55
订阅数
Tiled源码分析(四): 插件机制
Tiled作为一个通用的2D地图编辑器, 对于功能扩充做了一些考虑, 比例加载/输出第三方的文件格式. 不过分析下来, 能扩充的功能有限, 像UI面板之类的功能扩展就没有提供支持, 但是参考已经有的接口可以很方便地实现
逍遥剑客
2019-02-20
6300
抛弃MFC, 转向.Net
 现在我们的工具全是MFC的, 维护起来那叫一个郁闷 一直在找一个C++中好用的UI库, 看过Qt(看起来到不错, 懒得学), wxWidgets(跟MFC一个样), 剩下的就不说了...... 前段时间发现了Xtreme ToolkitPro, 里面那些Samples很强大, 也有过用它来做界面的冲动 但是想想, 这东西还是基于MFC, 一样还是要手动写........ 很怀念大学时在C#里整得那些东西, 做界面超级方便 但是, 要在C#里用C++的东西, 还要中间再加一层, 隔着衣服摸起来怎么会爽~~~
逍遥剑客
2018-05-21
1.3K0
Tiled源码分析(四): 插件机制
Tiled作为一个通用的2D地图编辑器, 对于功能扩充做了一些考虑, 比例加载/输出第三方的文件格式. 不过分析下来, 能扩充的功能有限, 像UI面板之类的功能扩展就没有提供支持, 但是参考已经有的接口可以很方便地实现 插件原理 Qt本身就对插件机制提供了完善的支持, 对于应用程序, 插件一般是以DLL的方式存在, 在程序运行时动态加载. DLL中实现已经在主程序中定义好的抽象接口, 然后主程序这边只需要使用这些抽象接口去调用插件中实现的各种自定义功能了. 插件加载 通过QDirIterator用去遍历pl
逍遥剑客
2018-05-21
7980
Tiled源码分析(三): Undo/Redo实现
就像之前说过的, 没有Undo/Redo的编辑器都是耍流氓 优点 不过, Qt为我们提供了Undo/Redo的完整框架, 连工具栏按钮和History控件都齐活了 Command模式的核心当然是Command, 就是说所有操作都是QUndoCommand, push进一个QUndoStack就redo, pop一个就是undo Tiled中比较特别是多文档编辑器, 也就意味着有多个QUndoStack, 所以比我之前写的编辑器多用了个QUndoGroup, 用于切换当前使用的stack 另外, QUndoV
逍遥剑客
2018-05-21
1.1K0
Tiled源码分析(二): 多文档支持
文档模型 文档对象是一个MapDocument类, 它的主要功能有: 管理编辑操作的signal的派发, 保证一些UI的状态可以正确地更新 管理地图的数据模型, 如layer model(Qt MVC结构中的model, 可以绑定到控件) 增加删除地图对象的操作接口 管理这个地图的undo堆栈(后续专门分析一下undo/redo) 管理地图编辑时的选中状态 然后就是DocumentManager, 是一个单件类, 用于管理打开的所有MapDocument, 看看它都有些什么: 持有一个QTabWidget,
逍遥剑客
2018-05-21
8780
Tiled源码分析(一): GUI编辑和布局
MFC, WinForms, WPF, Qt算是都折腾过, 就差WxWigets了 比较下来, 做游戏(引擎)工具开发的话, 最重要的是易上手, 好维护, 开发快, 综合下来还是滚回C++阵营, 选择了Qt 不用不知道, 其实传统的Qt Widgets用起来跟WinForms非常像, 甚至Qt Quick的特性跟WPF有的一拼 想当初强烈地想用C#, 很大部分原因是WinForms那个可视化GUI编辑器比较吸引人 不过QtDesigner虽说还没有生成事件代码的功能, 但是对于C++来说, 已经很不错了,
逍遥剑客
2018-05-21
1.3K0
没有更多了
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档