大家好,我是冷饭。
我是一名游戏开发者,之前推出了《内鬼搞搞震》这款游戏。
由于这个游戏是我单人闭门造车完成的,感觉自己对游戏开发还是缺乏比较完整的认识。在做下一个游戏之前,也希望进一步熟悉Switch、虚幻引擎以及如何和其他开发者协作。于是我开始寻找有意想要从PC移植到Switch的虚幻引擎项目。托朋友的福,还真让我找到了这么一个项目:《Ubaste》
Ubaste(以下简称猫猫球)是朋友的朋友们开发的一款Game Jam作品,核心玩法为3D平台跳跃并带有轻度的解谜要素,目前一共有两个关卡。
与其说是开发者有意将这个游戏移植到Switch,倒不如说我厚着脸皮找别人的项目练手...不过这都不要紧!我认为猫猫球规模虽小,但是属于一个完成的游戏,移植的过程肯定会学到很多,也希望能帮助到正在读到这篇文章的你。
拿到猫猫球的工程文件,引擎版本是5.0.3,为了减少移植遇到的问题,我也准备了一个带有Switch SDK的源码编译版的UE 5.0.3。经过了漫长的Compiling Shader和编译之后,终于打包出了一个在Switch上运行的版本。马上开机运行...
游戏在第一秒就崩溃了!有时候能看到标题画面,有时候还是黑屏就崩溃了。
花了很多时间排查,原来是UI Navigation插件里,需要在Platform Allow List里面添加"Switch"。
添加完之后,游戏终于可以运行起来了。但是,游戏里的水面材质消失了。
从下期开始,我将会分享在猫猫球移植Switch途中遇到的问题,以及我最后是如何解决的,其中包括并可能不限于:
- Shader重写(比如水面材质消失)
- Switch合规化(比如按键提示图标需要改为Switch的按键图标)
- 帧数优化
- 画面优化
本系列属于抛砖引玉,如有错漏欢迎各位指正和交流,谢谢。
暂无关于此日志的评论。