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

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

2.3.0 版本是用于错误修复和改进的次要 LTS 版本

🙏感谢 Axmol 的所有贡献者,包括财务赞助商:@thienphuoc、@bingsoo、@asnagni、@paulocoutinhox、@DelinWorks、@DUONG、@peterkharitonov

🙏非常感谢 @peterkharitonov 成为新的 250.00 美元/月的财务赞助商。

相对于 2.2.x 的重大变化:

  • Android 15 16KB 页面大小支持,自此 axmol 构建系统产出的 apk/aab 可运行在最新 Android 15 设备上。
  • 统一构建配置文件,主流构建工具链全部统一由 1k/build.profiles 控制,Android ndk , target_sdk, min_sdk 等版本,可在工程文件 .axproj 控制,
    格式都是 properties ,请参考本文迁移指导
  • 重命名 java 包名: org.axmol* ==> dev.axmol*
  • 重命名 Shader 编译工具: glslcc ==> axslcc
  • CI 版本发布脚本支持创建通用跨平台构建工具 axmol-bs ,仅 52KB zip,通过简单配置,即可轻松在 Windows,
    Linux, MacOS 平台支持为任意基于 cmake 的项目构建本机平台和交叉编译目标平台二进制 (axmol 引擎支持的所有平台)。
  • 构建系统添加 vs2022 预览版支持
  • luabinding 生成器的 libclang 更新到 19.1.6
  • 构建系统将所有缺失的工具链包统一下载至引擎的 cache 目录下
  • 添加构建 Android .aab 支持,构建命令: axmol -p android -aab

错误修复

  • 修复使用长字符串创建 Label 导致 Windows 随机崩溃的问题
  • 修复了 Android 构建问题
  • 修复媒体播放器 BUG
  • 修复 Android 类名路径不正确的问题
  • 修复渲染器测试用例的 batch draw 未生效的问题

改进

  • Metal:启用 mipmap 支持
  • 添加了对通过 CTRL+A 选择编辑框中所有文本的支持
  • 防止对 deleteBackward 方法的过度调用可能 Crash 问题
  • 更新了网站
  • 使 win32 messageBox 始终处于最顶部
  • 在适当的位置添加 printLeaks 调用,方便开发者检测内存泄漏
  • TTF 字体字符编码不再限制 65535

SDK 和工具更新

  • emsdk: 3.1.67 ==> 3.1.73
  • AGP: 8.4.0 ==> 8.7.3
  • gradle: 8.8.0 ==> 8.11.1
  • android target sdk: 34 ==> 35

第三方更新

  • astcenc: 4.8.0 ==> 5.1.0
  • c-ares: 1.34.1 ==> 1.34.4
  • curl: 8.10.1 ==> 8.11.1
  • flatbuffers: 24.3.25 ==> 1.1.0-815e6e7
  • fmt: 11.0.1 ==> 11.1.1
  • oboe: 1.9.0 ==> 1.9.3
  • webp: 1.4.0 ==> 1.5.0
  • jpeg-turbo: 3.0.4 ==> 3.1.0
  • luajit: 2.1-97813fb ==> 2.1-f73e649
  • imgui: 1.90.6 ==> 1.91.6

完整更新内容

https://github.com:8443/axmolengine/axmol/releases/tag/v2.3.0

下载

  • Github:

    • axmol-2.3.0.zip
    • axmol-bs-2.3.0.zip(通用跨平台构建工具)
  • 百度网盘:

    • axmol-2.3.0.zip
    • axmol-bs-2.3.0.zip`(通用跨平台构建工具)
  • axmol-2.3.0.zip: 635F1D5E46EE938E7D57A9DC591D50BF

  • axmol-bs-2.3.0.zip: 31845E841FC8604B768506E5F1B686F0

旧版本迁移

由于新版本引入了统一的构建配置文件 1k/build.profiles,工程文件由原来的 .axproj.json 改为采用 properties 格式的 .axproj ,因此需要迁移,步骤如下:

  1. 使用 axmol new 新建一个空工程,工程名称和包名和你的旧项目保持一致
  2. 使用比较工具(例如 BeyondCompare ),比对新旧工程目录,尤其是 gradle 中的变化,尽量将新配置合并到旧工程
  3. 删除旧工程文件: .axproj.json,将新工程文件 .axproj 复制过去
  4. 如果你想控制 android ndk, target_sdk, min_sdk 版本,则可从 1k/build.profiles 搜索对应关键字,将配置复制到 .axproj 并修改对应版本即可。

Android 15 16KB 页面大小支持

axmol-2.3.0 版本为了支持 Android 15 16KB 页大小的设备,在保持最大兼容性的情况下,继续使用 ndk-r23,而官方发布最后一个 r23c 是不支持 16KB 页大小的,
因此我们采用了 Google 在 ci.android.com 提供的支持 16KB 页面大小的 ndk-r23d patch 版本。尽管 axmol-2.3.0 的构建系统在你再次执行 setup.ps1 -p android
时,会自动从 ci.android.com 下载 ndk-r23d (由 1k/build.profiles 决定版本),但是,由于 GFW 问题,中国大陆是无法下载的,如果想继续使用 r23,则需要先从百度网盘下载对应平台 ndk-r23d 的 zip 包,并移动到 axmol 引擎的 cache 目录下,再执行 setup.ps1 -p android,方可成功安装支持 16K 页面大小的 ndk-r23d。

ndk-r23d 百度网盘下载地址如下:

https://pan.baidu.com/s/1neJydxOGTT7aCQvLLwbicw?pwd=qqiq

FAQ

  • Q: 如果继续使用 ndk-r23c 构建不支持 16K 页大小的会怎样?
    • A: 会直接 crash 无法运行。

结语

即使你不用 axmol 游戏引擎进行游戏开发,你如果有很多基于 cmake 的 C++ 库,那么独立于 axmol 引擎的通用跨平台构建工具 axmol-bs 依然值得你体验。

最后,祝所有关注和使用 axmol 引擎的开发者们,2025 元旦快乐!


http://www.kler.cn/a/468565.html

相关文章:

  • 【网络安全设备系列】9、WAF(Web应用防火墙)
  • 3.final关键字
  • 【计算机网络】课程 实验二 交换机基本配置和VLAN 间路由实现
  • GPT分区 使用parted标准分区划分,以及相邻分区扩容
  • 一文详解YOLOv8多模态目标检测(可见光+红外图像,基于Ultralytics官方代码实现),轻松入门多模态检测领域!
  • 【Rust自学】10.6. 生命周期 Pt.2:生命周期的语法与例子
  • STM32-笔记37-吸烟室管控系统项目
  • 国产编辑器EverEdit - 使用技巧:变量重命名的一种简单替代方法
  • Memcached prepend 命令
  • 华为OD E卷(100分)47-不等式是否满足约束并输出最大差
  • JavaWeb开发(四)HttpServletRequest
  • Web前端基础知识(六)
  • 奥迪TT MK1(初代奥迪TT、第一代奥迪TT)仪表盘故障/不精准/水温/剩余油量不准,如何修复、测试、复位?
  • 系统思考—企业辅导
  • 第06章 重定向与管道
  • LabVIEW计算机软件著作权
  • Leetcode打卡:设计一个ATM机器
  • leetcode 2241. 设计一个 ATM 机器 中等
  • 幸运彩票(PTA)C语言
  • Ansys Maxwell:3PH 变压器电感计算
  • 代码段中使用数据、栈
  • leetCode 33:搜索旋转排序数组
  • Android 系统服务DisplayManagerService和DisplayDevice生命周期解读
  • Redis数据库笔记——ZSet的底层实现(跳表)
  • 密码学原理技术-第十四章-Key Management
  • 力扣-20-有效的括号-栈