跨平台游戏引擎 Axmol-2.1.0 正式发布

时光流转,转眼间 2024 年了,自上个版本发布已经过去 4 个月,axmol-2.1.0 终于在 2024/1/20 正式发布了,此版本是一个主要的 LTS 维护发行版本,在此先感谢所有参与 axmol 的贡献者,特别感谢以下几位(名称为 github 账户名):

  • @rh101 @DeliWorks @aismann 在 axmol github 社区相当活跃
  • @iAndyHD3 创建了 axmol discord 论坛并维护
  • @danialias 创建和维护 axmol 的 wiki 页面以及 axmol.org 主页

2.1.0 相对于 2.0.0 的主要更新如下

  • 大幅缩减了仓库大小,由原来的 1.1GB+ 缩减至约:80MB
    • cmake 配置阶段同时添加了 gitee 镜像支持,在相对于引擎目录创建空文件 1k/.gitee 即可
  • Windows UWP平台由 C++/CX 迁移至 cppwinrt,自此 axmol 支持的所有平台 C++ 标准得以统一为 20
  • 增强 TTF 文本渲染,支持开启全局 SDF 渲染和渲染预烘焙 SDF 纹理
    • 添加扩展 SDFGen 用于生成预烘焙 SDF 字体纹理
    • 增加 API:FontAtlasCache::preloadFontAtlas用于于加载预烘焙的 SDF Font 纹理
  • 增加 API:Device::getPixelRatio 获取设备 DPI 缩放值
  • ImGui Android 平台增加 DPI 支持
  • 增加 Windows UWP 平台 FPS 控制支持,以便在高刷屏幕上能够合理限制帧率
  • 整合 backend::Devicebackend::DeviceInfobackend::DriverBase 以避免和主命名空间下的 Device 重名
  • 添加扩展:JSONDefault
  • 添加 WICImageLoader 虚拟文件系统支持
  • 添加 RichText 垂直对齐支持
  • 添加扩展:Inspector 以便探查场景对象
  • NativeWebGL 平台添加实验性的 WebSocket 支持
  • 添加 fairygui Lua 绑定支持
  • 为 PC 平台启用矩阵运算 SSE 加速指令支持
  • 添加 UserDefault 多文件配置支持
  • 添加 ActionCoroutine 类似 unity 引擎的协程支持
  • 添加 .net 风格的 JsonWriter 类支持
  • 更新 Android API 至: 34
  • 更新 AGP 插件至: 8.2.1
  • Android Studio 要求版本提升至: 2023.1.1+

BugFixes

  • 修复 glslcc 翻译后的 Metal Shader 中的纹理绑定次序和 GLSL 源码中不一致问题
  • 修复 GLES3 Shader 中标量数组布局错误问题
  • 修复 Lua 扩展在 Windows 平台的构建错误问题
  • 修复 ImGui 扩展一些稳定性问题
  • 修复 wasm 错误的 ALPHA 预乘造成系统字体渲染模糊问题
  • 修复文本渲染中未正确处理内容缩放导致布局错误问题
  • 修复 wasm 随机工具类始终返回 0 问题
  • 修复 ShaderCache 内存泄漏问题
  • 修复重建 ImGui context crash 问题
  • 修复 AudioPlayer::setTime 针对双通道音频设置播放时间错误问题
  • 修复 label SDF渲染时描边效果在 Metal 不起作用问题。

功能增强

  • 使用 std::unordered_map 替代了 uthash
  • 所有平台 cmake 版本要求提升至 3.28.1+
  • 增强 install-pwsh 脚本和 axmol 命令行构建脚本
  • 修复了 AGP8 构建警告,变更了 APK 签名 Gradle 配置:
    • RELEASE_STORE_FILE ==> KEY_STORE_FILE
    • RELEASE_KEY_STORE_PASSWORD ==> KEY_STORE_PASSWORD
    • RELEASE_KEY_ALIAS ==> KEY_ALIAS
    • RELEASE_KEY_PASSWORD ==> KEY_PASSWORD

兼容性修改

  • 重命名了 OpenGLView ==> GLView

三方库更新

  • astcenc: 4.5.0 ==> 4.7.0
  • c-ares: 1.19.1 ==> 1.25.0
  • clipper2: 1.2.2 ==> 1.3.0
  • curl: 8.2.1 ==> 8.5.0
  • jpeg-turbo: 3.0.0 ==> 3.0.1
  • llhttp: 9.0.1 ==> 9.1.3
  • ntcvt: 1.0.0 ==> 1.0.1
  • oboe: 1.7.0 ==> 1.8.0
  • openssl: 3.0.10 ==> 3.0.12
  • rapidjson: 1.0.0 ==> 1.0.0-b4a6da3
  • simdjson(NEW): 3.6.3
  • webp: 1.3.1 ==> 1.3.2
  • yasio: 4.1.0 ==> 4.1.4
  • fmt: 10.1.1 ==> 10.2.1
  • imgui: 1.89.8 ==> 1.90.1

gitee镜像地址可用

更多完整改动请访问

https://github.com/axmolengine/axmol/releases/tag/v2.1.0

相关推荐
欧云服务器3 天前
怎么让脚本命令可以同时在centos、debian、ubuntu执行?
ubuntu·centos·debian
智渊AI3 天前
Ubuntu 20.04/22.04 下通过 NVM 安装 Node.js 22(LTS 稳定版)
ubuntu·node.js·vim
The️3 天前
Linux驱动开发之Read_Write函数
linux·运维·服务器·驱动开发·ubuntu·交互
再战300年3 天前
Samba在ubuntu上安装部署
linux·运维·ubuntu
qwfys2003 天前
How to install golang 1.26.0 to Ubuntu 24.04
ubuntu·golang·install
木尧大兄弟3 天前
Ubuntu 系统安装 OpenClaw 并接入飞书记录
linux·ubuntu·飞书·openclaw
小虾爬滑丫爬3 天前
ubuntu上设置Tomcat 开机启动
ubuntu·tomcat·开机启动
老师用之于民3 天前
【DAY25】线程与进程通信:共享内存、同步机制及实现方案
linux·c语言·ubuntu·visual studio code
小虾爬滑丫爬3 天前
Ubuntu 上设置防火墙
ubuntu·防火墙
林开落L4 天前
解决云服务器内存不足:2 分钟搞定 Ubuntu swap 交换区配置(新手友好版)
运维·服务器·ubuntu·swap交换区