【axmol】基于Cocos2d-x 4.0的持续维护的游戏引擎介绍

Axmol引擎

A Multi-platform Engine for Desktop, XBOX (UWP) and Mobile games. (A radical fork of Cocos2d-x-4.0)

Axmol是基于Cocos2d-x 4.0持续维护分支,众所周知,官方团队全面转向Cocos Creator,几乎停止了Cocos2d-x的研发和更新,因此axmol诞生了,旨在延续Cocos2d-x。

支持平台列表

  • Windows Desktop
  • Windows Desktop(Clang)
  • Windows UWP|
  • Android
  • iOS/tvOS
  • Linux
  • macOS

基于VideoTexture的视频播放引擎

PlatformMediaEngineVideo Compress FormatVideo Pixel FormatBackend
Windows DesktopcompleteH264, HEVC, VP90YUY2, NV12, RGB32IMFMediaSession
Windows UWPcompleteH264, HEVC, VP90BGR32IMFMediaEngine
Apple macOScompleteH264, HEVC(hvc1)NV12, BGR32AVFoundation
Apple tvOScompleteH264, HEVC(hvc1)NV12, BGR32AVFoundation
Apple iOSin progressH264, HEVC(hvc1)NV12, BGR32AVFoundation
AndroidplannedH264RGB32

关于预编译库

  • 所有预编译库均通过buildware使用GitHub Actions自动构建
  • 预编译库支持架构
    • windows: x86,x64
    • linux: x64
    • macos: x64, arm64(M1芯片)
    • android: armv7, arm64, x86, x64
    • ios: arm64, x64
    • tvos: arm64, x64

主要特性:

  • Windows UWP 支持,请参考: https://github.com/axmolengine/axmol/pull/1108
  • 增加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_ALSOFToption 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

快速开始

必要工具 python
  • python-3.7+
准备步骤
  1. 进入引擎axmol根目录
  2. 执行python setup.py后重启控制台
Windows
  1. 安装CMake,要求3.22以上
  2. 确保 Visual Studio 2019/2022 已正确安装
  3. 执行下面的命令
    • PC: cmake -S . -B build -G "Visual Studio 16 2019"

    • UWP: cmake -S . -B build -G "Visual Studio 17 2022" -A x64 -DCMAKE_SYSTEM_NAME=WindowsStore "-DCMAKE_SYSTEM_VERSION=10.0" "-DAX_VS_DEPLOYMENT_TARGET=10.0.17763.0"

  4. 之后就可以用vs打开axmol/build/axmol.sln启动cpp-tests等测试工程了
Android
  1. 安装 Android Studio 2021.1.1+

  2. 第一次启动Android Studio, 会引导安装一些工具,默认安装即可,如果不需要模拟器可以把Virutal Device勾选去掉

  3. 启动 Android Studio并打开axmol\tests\cpp-tests\proj.android

  4. 通过 [Tools][SdkManagers] 打开sdk管理工具,选择如下SDK Platforms和SDK Tools后, 点击按钮 Apply一路跟着引导安装即可:

    • Android SDK Platform 33 (在SDK Platforms页签)
    • Android Gradle Plugin (AGP) 7.2.2
    • Android SDK Build-Tools 30.0.3 和 AGP 版本对应
    • Gradle 7.4.2
    • NDK r23c+
    • CMake 3.22.1+
  5. 等待Gradle sync完成后,Build APKs,安装运行

  6. 如果使用非sdk自动安装的CMake版本, 需要下载ninja, 并且拷贝ninja.exe到CMake的bin目录

iOS
  1. 确保已安装xcode12+和cmake3.21+, 安装CMake命令行支持: sudo "/Applications/CMake.app/Contents/bin/cmake-gui" --install

  2. 执行如下命令确保cmake能成功生成xcode工程:
    sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

  3. 生成xcode工程, 进入axmol根目录执行如下命令之一:

    • for ios arm64:
      cmake -S . -B build -GXcode -DCMAKE_TOOLCHAIN_FILE=$AX_ROOT/cmake/ios.toolchain.cmake -DPLATFORM=OS64
    • for ios armv7,arm64 combined:
      cmake -S . -B build -GXcode -DCMAKE_TOOLCHAIN_FILE=$AX_ROOT/cmake/ios.toolchain.cmake -DPLATFORM=OS
    • for ios simulator x86_64:
      cmake -S . -B build -GXcode -DCMAKE_TOOLCHAIN_FILE=$AX_ROOT/cmake/ios.toolchain.cmake -DPLATFORM=SIMULATOR64
    • for tvos arm64:
      cmake -S . -B build -GXcode -DCMAKE_TOOLCHAIN_FILE=$AX_ROOT/cmake/ios.toolchain.cmake -DPLATFORM=TVOS
    • for tvos simulator x86_64:
      cmake -S . -B build -GXcode -DCMAKE_TOOLCHAIN_FILE=$AX_ROOT/cmake/ios.toolchain.cmake -DPLATFORM=SIMULATOR_TVOS
    • for macos x86_64(Intel)
      cmake -S . -B build -GXcode -DCMAKE_OSX_ARCHITECTURES=x86_64
    • for macos arm64(M1)
      cmake -S . -B build -GXcode -DCMAKE_OSX_ARCHITECTURES=arm64
  4. 之后就可以用xcode打开, 选择cpp-tests编译运行

一些基于axmol有趣的项目

  • https://github.com/solan-solan/HeightMap/tree/smooth_lod_passing
  • https://github.com/wzhengsen/StarryX
  • https://github.com/aismann/SimpleSnake
  • https://github.com/EugenyN/TanksKombat

注意

  • ThreadLocalStorage线程本地存储
    • ios x86 simulator ios>=10 and axmol no longer provide x86 libraries
    • ios x64 or devices arm64 ios sdk>=9.0
    • the openal-soft maintained by kcat use TLS

QQ交流群

点击链接加入群聊【axmol 交流群】:https://jq.qq.com/?_wv=1027&k=nvNmzOIY

参考链接

  • official v4: https://gitee.com/mirrors/cocos2d-x
  • Git快速手册: https://github.com/axmolengine/axmol/discussions/411
  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值