- 建议使用vs2017
- SDL_Engine依赖于SDL2 SDL2_mixer SDL2_image SDL2_ttf 和zlib,所以在配置的时候需要设置附加包含目录和附加库目录
- SDL_Engine工程会生成一个静态库,所以在开发的时候需要引用到这个库,关于这个库的使用,待更新 关于SDL_Engine的使用
- 默认使用了一个窗口(也只有一个窗口)
- SDL使用的只有一个渲染器
- Node删除时最好使用removeFromParent或者removeChild(node,true),因为这样才会清除干净
- 本引擎依赖于SDL SDL_image SDL_ttf SDL_mixer SDL_gfx Box2D zlib rapidxml
- bug之一,目前对于双击没有较好的支持已经修复,因为win下保证只会有一个触碰点
- 不建议使用SDL_gfx,如果要使用,最好先保存原来的渲染颜色和渲染模式
- update返回的值一直是设置的帧率的时间,无论实际上经过了多久,若要获得实际运行时间,使用SDL_GetTicks()
- 存在一部分警告,无伤大雅
- Debug下键盘事件,SDL_PollEvent会存在一定的延迟,原因未知
- 本引擎FPS显示使用LabelDotChar,不再使用lazyfont作为系统字体,不再依赖额外资源
- 本引擎使用了外置的PxString和SDL_Gfx,对里面的代码进行了很细微的改变以适应本引擎。
具体如下 修改texturedPolygon的参数值 SDL_Surface为SDL_Texture 内部使用SDL_QueryTexture()来获取大小, 并且对SDL_DestroyTexture和SDL_RenderPresent进行了注释没有修改,SDL_gfx_mod.h 而没有修改 SDL_gfx
- 本引擎需要c++11以上支持
- 本引擎稍微修改了下 GB2ShapeCache-x.h ~.cpp,已经能支持Physics editor导出的文件
- 支持外部ui文件xml
- 渲染全部交给Sprite进行,不过目前并不好用,等待以后更新(目前已经更新)
- 关于和位置有关的动作,需要注意的是,SDL的使用的是Opengl坐标系,不是笛卡尔坐标系,这个需注意
- contentSize只是逻辑大小,影响渲染,影响渲染的是scale anchorPoint flip等
- 如没有特殊需求,就不要修改texture的blend mode
- SDL_Engine目前已经能很好的支持图片的锚点,旋转,动画等,代价就是会增加一些内存的使用
- TextureCache的线程安全问题暂时没有解决,只是简单更新了下。
- FileUtils isFileExist()是否存在该文件,会尝试打开文件,效率低下。
- 当前所有的事件监听器优先级默认为0,注意,注意,注意!!!
- EventListenerTouchOneByOne类的onTouchBegan()返回值为true表示吞并事件,并且该事件在onTouchMoved()、onTouchEnded()同样有用,不过如果想要真正地吞并事件,还需要调用listener->setSwallowTouches(true)
- UI工厂实现类似于JSP动态生成的功能