目的
让 xege 在 linux 、windows 上都能运行,并可以在构建时自由选择渲染后端和窗口/事件管理器,并且可以支持硬件加速
阶段1:解除对 windows 的直接依赖
目前整个 xege 完全依赖 windows 系统 api ,这一阶段逐步将各种依赖 windows 的直接 api 调用改写、封装成能够跨平台的库,除gdi+调用之外。
这一阶段不需要非得完全实现跨平台
阶段2:前后端分离
逐渐将原来的 gdi+ 等图形绘制调用从 api 侧分离,逐步产生一个与 gdi+ 无关的渲染后端、窗口/事件管理抽象。
阶段3:开始加入跨平台的系统 api 封装实现并写一个通用的软渲染后端
阶段1的后继,在这个阶段应该平台封装已经稳定,可以开始加入跨平台实现了。
阶段4:开始引入其它渲染后端并开始考虑后续的扩展
这时 xege 已经完全跨平台了,只差加入支持硬件加速的渲染后端了。
此时 xege 已经基本上有一个灵活的架构,完全可以开始考虑扩展更高级的功能了
目的
让 xege 在 linux 、windows 上都能运行,并可以在构建时自由选择渲染后端和窗口/事件管理器,并且可以支持硬件加速
阶段1:解除对 windows 的直接依赖
目前整个 xege 完全依赖 windows 系统 api ,这一阶段逐步将各种依赖 windows 的直接 api 调用改写、封装成能够跨平台的库,除gdi+调用之外。
这一阶段不需要非得完全实现跨平台
阶段2:前后端分离
逐渐将原来的 gdi+ 等图形绘制调用从 api 侧分离,逐步产生一个与 gdi+ 无关的渲染后端、窗口/事件管理抽象。
阶段3:开始加入跨平台的系统 api 封装实现并写一个通用的软渲染后端
阶段1的后继,在这个阶段应该平台封装已经稳定,可以开始加入跨平台实现了。
阶段4:开始引入其它渲染后端并开始考虑后续的扩展
这时 xege 已经完全跨平台了,只差加入支持硬件加速的渲染后端了。
此时 xege 已经基本上有一个灵活的架构,完全可以开始考虑扩展更高级的功能了