Axmol跨平台游戏引擎
Axmol是一款跨平台游戏引擎(基于Cocos2d-x-4.0),旨在延续Cocos2d-x。
支持平台列表
Windows Desktop |
Windows Desktop(Clang) |
Windows UWP |
Android |
iOS |
tvOS |
Linux |
macOS |
主要特性:
- 重构基于VideoTexture的跨平台视频播放引擎(进行中,除Android/Linux平台外,其他平台已完成)
- Windows UWP 支持,请参考: #1108
- Windows Clang编译器支持
- 增加tvos支持
- 增强Windows下工作流,支持链接引擎预编译库, 用法请查看: windows workflow guide
- Windows 视频播放支持
- Windows x64编译支持
- 基于yasio重构HttpClient以支持并发Http请求,不再需要sendImmidate接口
- 重构AudioEngine, 全平台OpenAL
- openal-soft, pass -DAX_USE_ALSOFT=ON to cmake to force enable it
- OpenAL.framework, if no and
AX_USE_ALSOFT
option specified, cmake script will choose it on osx/ios, even through it was mark as deprecated, but still avaiable.
- 重构UserDefault, 全平台基于内存映射文件 mio, 性能提升百倍
- 模块化所有引擎扩展库, 所有扩展库放到extensions目录下,如cocostudio, spine
- AudioEngine实现wav所有
openal-soft
支持的封装格式, 例如MS-ADPCM, ADPCM等 - 使用现代化的GL加载器glad代替glew
- 增加google angle渲染后端支持
- C++最低标准要求: C++17/20
- 设置ios下最低目标平台为ios9.0
- 使用更快的xml解析库pugixml代替tinyxml2
- Downloader全平台统一实现,均基于curl
- 全平台统一使用XML SAX解析plist文件, 移除Apple平台的实现
- Spine 3.8支持
- 新增FairyGUI支持
- 新增硬件压缩纹理格式ASTC 4x4/6x6/8x8支持,支持软解
- 新增硬件压缩纹理格式ETC2 RGB/RGBA支持,支持软解
- ImGui集成,非常方便写游戏内嵌小工具,用法详见ImGui
- 完整改动列表,请查看CHANGELOG
基于VideoTexture的视频播放引擎
Platform | MediaEngine | Video Compress Format | Video Pixel Format | Backend |
---|---|---|---|---|
Windows Desktop | complete | H264, HEVC, VP90 | YUY2, NV12, RGB32 | IMFMediaSession |
Windows UWP | complete | H264, HEVC, VP90 | BGR32 | IMFMediaEngine |
Apple macOS | complete | H264, HEVC(hvc1) | NV12, BGR32 | AVFoundation |
Apple tvOS | complete | H264, HEVC(hvc1) | NV12, BGR32 | AVFoundation |
Apple iOS | in progress | H264, HEVC(hvc1) | NV12, BGR32 | AVFoundation |
Android | planned | H264 | RGB32 |
关于预编译库
- 所有预编译库均通过buildware使用GitHub Actions自动构建
- 预编译库支持架构
- windows: x86,x64
- linux: x64
- macos: x64, arm64(M1芯片)
- android: armv7, arm64, x86, x64
- ios: arm64, x64
- tvos: arm64, x64
评论