智能高科网

如果我用Unity或者虚幻4开发一个游戏,怎样让我的游戏支持让玩家自制mod修改游戏这一功能?

来源:www.mchinamag.com   时间:2023-09-25 03:28   点击:300  编辑:admin   手机版

分两部分回答,数据和逻辑。

首先是数据,我在之前的文章中使用的这些方法:

MaxwellGeng:基于Unity3D的大地形研究(1):Cluster Async LoadMaxwellGeng:基于Unity3D的大地形研究(2):资源序列化与材质加载

是使用二进制的方法,将场景渲染数据通过二进制储存,并在实时环境下使用文件流进行读取和异步加载的方法。使用这种方法的好处在于:不受限于引擎本身的打包,可以做到将游戏项目和游戏文件独立开来(B社:小伙子有前途),同时也不受限于Unity的场景加载逻辑,用户完全可以通过输入的数据自行开发一个32KM的大地形,然后在游戏中依靠现有的渲染逻辑自动异步加载卸载。这不仅限于渲染,场景的物理碰撞,逻辑脚本等当然都可以用这样的方法进行序列化和反序列化。

这种序列化方法我现在可谓乐此不疲,包括我目前正在开发的给这套地形系统使用的GI,都在采用这种方法,如果要开发此类功能,只需要后期给用户提供一个编辑器程序,用户就可以自行开发了。

然后是逻辑,逻辑可以选择提供脚本语言接口,比如Python或者Lua,脚本语言虽然性能不大行,但是上限也还是很高的,如果愿意你把多线程和内存管理接口提供给用户都行……(大雾)。

剩下的大概就是一些设计模式,框架方面的工作了,这个没什么捷径可以走,只能应对不同项目类型提供不同方案然后慢慢试错。

顶一下
(0)
0%
踩一下
(0)
0%
相关评论
我要评论
用户名: 验证码:点击我更换图片