[gdc20]control的可破坏环境技术

Posted 安柏霖

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[gdc20]control的可破坏环境技术相关的知识,希望对你有一定的参考价值。

在这里插入图片描述
gdc20, 由remedy的特效主美 johannes richter带来;
原文在youtube上是公开的:
https://www.youtube.com/watch?v=kODJsQGXanU
单从最终表现上来看,应该说是近几年,小规模破坏品质做的很不错的案例了:
在这里插入图片描述
而且参与开发的人也不多1-3人,还在芬兰开发,可见是一个非常实用的技术和流程;

overview

在这里插入图片描述
整体的技术是:

  • houdini里做模型预切以及物理属性setup
  • 实时做模拟
  • 模型之间有层级以及通过joints来连接(这里joints可以理解成是挂接系统,和physx里的joints还不是一个概念)
  • 根据physiscs和material的属性来生成比较复杂的特效(所以效果看起来很不错)
  • 工具链和资产管理很重要
  • 效率和自动测试是一个需要注意的点

技术相对简单,流程,美术细节是关键

如果就根本技术点上看,预切&模拟,根据属性生成特效,应该说是已经有10多年历史的老技术了;
但是以新的内容细节标准,流程再应用到游戏里依旧是一个非常赏心悦目的结果;
对细节层级的定义比较清晰:
在这里插入图片描述
工具流程是:
在这里插入图片描述
然后houdini的应用也比较关键,houdini在生成破坏,以及定义物件属性的能力真的是强大;

物件破坏等级和组织层级

在这里插入图片描述
和大多数预切破坏差不多,破坏也是分多个等级;
物件内部组织上也有hierarchy:
在这里插入图片描述

特效

在这里插入图片描述
地上的小火星都有正确的物理碰撞,而且是量很大,背后就是gpu上做的simulation,并且使用sdf来做collision。
在这里插入图片描述
(particle碰撞用的sdf)

工具链,测试和优化

文中也提到了比较多的工具链中的事情,包括命名等问题;
测试,也是一直靠人力,整个效率不太好;
当然性能也是一直有压力,这个还不太容易一下子测出来,到项目后期才显现出来;
不过可能是美术的原因,这些点都比较简单,就不列了,如果要实际做这个系统的同学,可以细节具体看下;

以上是关于[gdc20]control的可破坏环境技术的主要内容,如果未能解决你的问题,请参考以下文章

[gdc20]Quad Mesh Simplification in Frostbite

[gdc20]Fast Denoising With Self Stabilizing Recurrent Blurs

[gdc20]Fast Denoising With Self Stabilizing Recurrent Blurs

GDC2017神秘海域 4中所使用的顶点着色器技术

GDC主机交流

: 塞尔达组在GDC2017演讲的文字翻译:技术的智慧