当前位置: 首页 > ops >正文

跨平台游戏引擎 Axmol-2.8.0 发布

Axmol 2.8.0 版本是一个以错误修复和功能改进为主的次要 LTS 长期支持版本,发布时间: 2025 年 9 月 1 日

🙏感谢所有对 axmol 项目的贡献者,包括财务赞助者:@scorewarrior、@peterkharitonov、@duong、@thienphuoc、@bingsoo、@asnagni、 @paulocoutinhox 以及 历史赞助者

仓库地址

  • GitHub (官方): https://github.com/axmolengine/axmol
  • Gitee (镜像): https://gitee.com/simdsoft/axmol

错误修复

  • 修复 #2669:由于 DriverGL 初始化失败,Windows 11 上的 Windows UWP 无法运行,由 @halx99 修复。
  • 修复 #2655:在 Android 场景包含 ImGui 图层时多点触控不起作用,由 @halx99 修复。
  • 修复 #2674:Linux 上最终应用未链接 OpenSSL,由 @halx99 修复(PR: #2675)。
  • 修复从普通模式切换到 SDF 时标签渲染的 FontAtlas 错误,由 @halx99 修复(PR: #2629)。
  • 修复 wasm 中 Device::getTextureDataForText 处理空白文本时抛出异常,由 @halx99 修复。
  • 修复 Linux 上当 LabelType 为 STRING_TEXTURE 时标签颜色不正确的问题,由 @halx99 修复。
  • 修复错误的 fmt::format_to 用法,由 @halx99 修复(PR: #2612)。
  • 修复 genbindings.ps1 中 LLVM 版本截取逻辑问题,由 @halx99 修复。
  • 修复 Label 的 SDF 在字体缩放时的渲染问题及其他相关错误,由 @halx99 修复(PR: #2625)。
  • 修复项目包含 Swift 代码时的编译错误,由 @halx99 修复(PR: #2632)。
  • 修复 wasm Downloader 以错误权限打开文件(#2666),由 @AlexandreK38 修复(PR: #2666)。
  • 修复在 CMake 4.1 以 Windows 为目标时“找不到汇编器”的构建失败问题,由 @halx99 修复。

功能改进

  • 改进 Apple iOS 平台的渲染视图创建,由 @halx99 提交(PR: #2600)。
  • 将 GLView 重命名为 RenderView,由 @halx99 提交(PR: #2602)。
  • 在 2.6.0 版本发布说明中增加 emsdk 降级提示,作者 @halx99。
  • 改进 wasm 开发环境配置说明,作者 @halx99。
  • GLContextAttrs 重命名为 GfxContextAttrs,作者 @halx99。
  • 更新 pull_request_template.md,作者 @aismann(PR: #2609)。
  • 改进 UTF-8 字符计数,移除 strlen 调用,作者 @halx99(PR: #2614)。
  • 改进 UTF-8 文本处理,作者 @halx99。
  • 移除 sprintf/snprintf 存根,作者 @halx99(PR: #2615)。
  • 改进 Android SDK 设置,Axmol 指定的 Android SDK 目录优先级:android project local properties > ANDROID_HOME > ANDROID_SDK_ROOT > axmol/tools/external/adt/sdk,作者 @halx99。
  • 更多头文件使用 pragma once,作者 @halx99(PR: #2616)。
  • 新增窗口尺寸限制设置支持,作者 @NgVThangBz(PR: #2618)。
  • 将 cpp-tests 中“Node: Label - New API”重命名为“Node: Label”,作者 @aismann(PR: #2627)。
  • 更新 ImGui 多视口提示信息,作者 @halx99。
  • 改进测试(统一 cpp-/lua- 测试中的菜单项命名),作者 @aismann(PR: #2640)。
  • 将 SIMD 可用性检测移入独立的 CMake 文件,作者 @j-jorge(PR: #2642)。
  • 将 CMAKE_MSVC_DEBUG_INFORMATION_FORMAT 设为 Embedded,以解决 PDB 体积过大问题,作者 @halx99。
  • 改进 NuGet 包管理,作者 @halx99(PR: #2671)。

SDK 和工具更新

  • AGP: 8.11.0 => 8.11.1
  • gradle: 8.14.3 => 9.0.0
  • cmake: 4.0.3 => 4.1.1
  • webview2 (msedge): 1.0.992.28 => 1.0.3045.78

三方库更新

  • curl: 8.13.0 => 8.15.0

发布文件 MD5 校验值

  • axmol-2.8.0.zip: 0100b8b0a73d25b0fb020590fc2e8a54
  • axmol-bs-2.8.0.zip: 114afdb56e2f507c831163e6cd6385e8

下载

GitHub

国内用户可尝试复制链接使用迅雷下载

  • axmol-2.8.0.zip
  • axmol-bs-2.8.0.zip

百度网盘

  • axmol-2.8.0.zip
  • axmol-bs-2.8.0.zip

SourceForge

Axmol-2.8.0

本版亮点详解

  • NuGet 包管理优化
    本版本对 NuGet 包管理进行了改进:Axmol 依赖的 Microsoft Edge WebView2 和 CppWinRT 包将在 CMake 配置阶段统一下载至 <AX_ROOT>/cache/packages 目录。
    这样,即使删除 build 目录,这些依赖包也无需重新下载。此前版本会将依赖下载到 CMAKE_BINARY_DIR,导致清理构建目录后需重复下载。

Axmol 项目最新动态

  • 分支管理优化
    为了让开发者更直观地选择适合生产环境的分支,仓库分支结构进行了调整:

    • dev 分支更名为 release/2.x,作为 2.x LTS 稳定维护与发布分支
    • wip-v3 分支更名为 dev/v3,并设为默认开发分支(尚未正式发布,虽处于开发阶段,但依托 CI 持续集成,确保构建与运行始终可用)
  • 目录结构优化(dev/v3)
    将引擎核心代码目录 core 重命名为 axmol,并统一替换引擎代码中的 include 语句为 #include "axmol/xxx/xxx.h",以简化头文件引用路径。
    此调整不仅使代码结构更清晰,还能更方便地与其他代码库协同使用,减少头文件命名冲突的风险。

  • 渲染后端重构(dev/v3)
    dev/v3 分支对渲染后端进行了重构,新增 D3D11 渲染支持。在 Windows 平台上,相比原 GLES API,性能提升约 13.6%
    同时,axmol/renderer/backend 目录已重命名并迁移至 axmol/rhi,详细说明可参考 About-RHI-in-axmol-v3。

  • clang-format 增强(dev/v3)
    为保持引擎核心代码格式统一与规范,增强并完善了 clang-format Lint CI,对每个 PR 自动检查代码格式是否符合规范。
    同时新增 /clang-format 机器人评论指令:在 PR 评论中发送该指令,机器人将自动修正代码格式并推送至 PR 原分支(需确保提交 PR 时勾选“允许维护者编辑”选项)。

http://www.xdnf.cn/news/19515.html

相关文章:

  • Prettier代码格式化工具测评:支持JS/TS/Vue多语言,兼容ESLint实现团队代码格式统一
  • TKDE-2022《Low-Rank Linear Embedding for Robust Clustering》
  • Element-Plus 入门指南
  • 【3D通用视觉框架】基于Qt5开发的3D视觉框架软件,纯底层,全套源码,开箱即用
  • R语言根据经纬度获得对应样本的省份
  • PCB设计规范
  • redis-----java客户端
  • K8s集群+Rancher Server:部署DolphinScheduler 3.2.2集群
  • 【vue2】vue2.7x的项目中集成tailwind.css真的不要太香
  • GPT-5在医疗领域应用的研究效能初探(上)
  • Elasticsearch赋能3D打印机任务统计分析
  • 【图像处理基石】图像预处理方面有哪些经典的算法?
  • 聚铭网络实力蝉联数说安全“2025年中国网络安全市场100强”
  • 【C++游记】红黑树
  • Lombok 实用注解深度解析!
  • 【项目】多模态RAG—本地部署MinerU实现多类文档解析
  • 懒加载详细讲解
  • 使用修改过的arj源码编译和测试
  • C++ 学习与 CLion 使用:(五)数据类型,包括整型、实型、字符型、转义字符、字符串、布尔型
  • 从DevOps到BizDevOps:哪些DevOps工具能够成为业务创新加速引擎?
  • 响应式编程框架Reactor【8】
  • Notepad++近期版本避雷
  • 中心扩展算法
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘tox’问题
  • 利用 DrissionPage 精准获取淘宝商品描述:Python 爬虫实战指南
  • C/C++、Python和Java语言的比较
  • 【职业】算法与数据结构专题
  • 15693协议ICODE SLI 系列标签应用场景说明及读、写、密钥认证操作Qt c++源码,支持统信、麒麟等国产Linux系统
  • 浪潮科技Java开发面试题及参考答案(120道题-上)
  • 利用本地电脑上的MobaXterm连接虚拟机上的Ubuntu