Admenri / rguplayer

The Universal Ruby Game Engine (RGU) Project
BSD 3-Clause "New" or "Revised" License
21 stars 6 forks source link

[改造] 现代化改造 #14

Open Admenri opened 5 days ago

Admenri commented 5 days ago

The Universal Ruby Game Engine 现代化改造列表: 2024.7.2拟定

  1. 更新全新设置读写机制,包括: 放弃读取ini,使用json读取配置, 自动检查RGSS版本:通过检查是否含有文件:Data/Scripts.rvdata (2)

  2. 对content层导出类(Sprite Plane等)解耦, 放弃内置的GLES 3.0渲染器,改用第三方图形接口, 全面翻新渲染线程,改用现代图形API规范实现图像部分

变化: 内置shader由GLSL 3标准转换为HLSL 由GLES通过ANGLE转译到D3D11,Vulkan后端 转向非转译模式的D3D11,D3D12,Vulkan后端。 提供光追渲染管线支持 在移动端支持非转译的Vulkan后端 在MacOS系统支持非转译的Metal后端

导出功能变化: 提供批量绘制几何图形的类Geometry 重新设计Shader类以适应现代图形API的设计

  1. (待定)放弃使用SoLoud库作为音频部分核心解码器, 使用OpenAL + stb, dr库等实现相同效果

  2. 通过Ruby 3.0引入的FiberScheduler实现BoostASIO库封装 以达到支持异步网络IO的效果

  3. (待定)研究一种新型加密格式,需要散步在程序里的几个密钥解码 用户可以通过为exe设置VMP加壳等方式实现强加密

  4. 绑定层提供一套常用的Win32API内置功能(ini读写,内存操作等) 用于补齐Win32API跨平台需求

  5. 在改造完成图形API的基础上提供Spine2D的支持 (待定)提供Native Live2D Cubism支持

  6. 将静态链接的Ruby库更改为动态链接 以支持require 'xxx.so'的操作 间接实现支持Ruby Gem库

Admenri commented 4 days ago

创建新的分支legacy-rgu用于继续维护RGU的旧版本, 同时设置主分支master为现代化改造分支