Netmarble使用虚幻引擎打造独特质感手游《二之国:交错世界》( 三 )


首席客户端程序员TaeWooKim:《二之国》的渲染使用了传统的卡通着色器 。 此外 , 它所呈现的感觉依赖于吉卜力风格的暖调视觉画面 。
虚幻引擎的材质编辑器工具非常强大 , 具有直观的用户界面 , 能够让我们快速迭代 , 并更快地实现当前视觉目标 。
我们也只见过这一个引擎有能力创造聚集着数百名角色的大规模战场 。
即使不修改引擎 , 使用这些工具也可以显著改善性能 。 由于它还提供了完整的源代码 , 任何人都可以准确了解这些优化的原理 , 并快速应用它们 。
使用虚幻引擎还将带来许多其他优势 , 例如便利的多平台支持、强大的UDN支持 , 以及插件功能 。
Netmarble使用虚幻引擎打造独特质感手游《二之国:交错世界》
文章图片
团队有什么非常喜欢的虚幻引擎工具或功能吗?
首席客户端程序员TaeWooKim:蓝图编辑器、Sequencer、Persona、行为树、材质编辑器和UnrealInsights , 这些都是非常易用的工具 。
每款工具都具有预览功能 , 这大大加快了开发过程 。
此外 , 还有许多非常有用的调试工具 。 其中 , 蓝图调试、碰撞分析器和可视记录器对我们产生了巨大的帮助 。
通过插件、命令行或编辑器工具控件 , 我们可以轻松地为每款游戏扩展出特定功能 。 例如 , 我们就为“熟悉的冒险”创建了带有编辑工具的插件 。
感谢实时代码编写功能 , 快速迭代成为了可能 。 在修改代码后能够对其进行检查 , 大幅提高了工作效率 。
考虑到Netmarble曾在《天堂2:革命》中使用过虚幻引擎 , 那次经验对于《二之国:交错世界》的开发是否存在帮助作用?
TaeWooKim:我们几乎熟悉虚幻引擎的所有工具 , 因为《天堂2:革命》中也使用了虚幻引擎 。
我们只是将引擎升级到了较新的版本 , 获取EpicGames后来增加的额外功能 。
《二之国:交错世界》建立在我们从《天堂2:革命》中所学到的经验之上 , 通过回顾如何实现那款游戏中的功能 , 我们节省了不少时间 。 这允许我们集中精力快速扩展和改进《二之国》的功能 。
Netmarble使用虚幻引擎打造独特质感手游《二之国:交错世界》
文章图片
《二之国:交错世界》运行得如此流畅 , 能否谈谈你们是如何针对移动平台优化游戏的?
TaeWooKim:除了基本的优化技术外 , 我们还大量使用了虚幻引擎提供的重要性管理器和URO(更新速度优化)功能 。
重要性管理器用于确定每个对象的重要性 , 帮助我们决定要采取的合适行动 。 关键的优化领域包括:
忽略不必要的Tick
展示由视野和距离产生的细节差异
忽略在视野外产生的某些动画和粒子
即时更改视野外的某些材质 , 不进行存储
将小地图对象分组
通过缓存避免频繁地生成/销毁Actor
通过缓存检查和检验文件
避免创建重复的大纲组件 , 仅按需创建
《二之国:交错世界》因其流畅的网络代码而受到好评 。 能否深入谈谈团队的实现方法?
首席服务器程序员HyunKooKim:
1、即使是在服务器上 , 也应该使用虚幻引擎的寻径模块 。
l当NPC移动时 , 如果客户端和服务器间的寻径逻辑不同 , 移动就可能存在偏差 。
Netmarble使用虚幻引擎打造独特质感手游《二之国:交错世界》】l要解决这个问题 , 服务器也必须导入并使用虚幻引擎的寻径模块 。
2、使用自适应同步控制管理器 , 它将根据用户数量调整移动同步周期 。
l最初 , 由于担心出现性能问题 , 我们逐帧收集和发送移动数据包 。

相关经验推荐