8. 计划的变更

在这一部分,我想分享一些我们在开发过程中改变的东西。因为事情并不总是按照计划进行,有些想法可能在纸面上很好,但是最终可能并不是那么好。

第一个例子是 Biome Painter:

因为我们发现,我们可能在一个地方有太多的生态进行混合,调试它们会是一个噩梦。比如下图左边,我们虽然只有三个生态,但已经很难看出来哪些地方是红色的生态了。

虽然我们也可以有一种模式,让用户一次只看到一个生态。但是对用户来说,能够同时看到所有画的生态是最好的。

实际上最终我们发现,完全不需要Biome的混合就能产生好的结果。所以右边那张图,虽然看起来很奇怪,但那才是我们的 BiomePainter 的输入模式。

另一个例子是地形非生物数据的生成:

9. 总结

最后是总结,一些吸取的教训:

Q&A

GDC版的Q&A

GDC版分享

Q:您好,请问您能给我们介绍一下存储mask和地形数据的分辨率吗?

A:mask的分辨率是地形上1米1个像素。

Q:所以是地形分辨率的一半吗?

A:是的,地形高度图实际上是50厘米。


Q:真是个难以置信的演讲。我有个关于点云的问题。你们在Houdini写的文件是什么?我是指那些引擎读取的,包含向量的巨大的数据。

A:实际上我们有个专有的格式,我们称之为GameX,它在育碧的不同引擎之间使用。他就是一个文件格式,存储点位置,和引擎所需的全部属性。

Q:很酷,谢谢。


Q:嘿,我有一个用户视角的问题。你们是否有个系统来处理用户在地形方面所犯的错误。举个例子,你刚才说你们把地形分为了一公里一个地块,那么如果我在边缘进行了雕刻,但是另一个地块没动,这样两个边缘就不再匹配,或者说我在一边放了一条河而另一边不放。

A:非常聪明的问题!事实上,编辑器中的工具会阻止你画得太靠近边缘,为了避免出现你所说的场景。


Q:你能告诉我们这项工作需要多少人,花了多长时间吗?

A:你是指开发工具吗?

Q:是的

A:大概,一个半的人力,花了两年半时间,让工具稳定下来,之后就只是在稳定的工具上添加新的工具。


Q:你好,谢谢你令人难以置信的演讲,我有两个问题。

A:你好

Q:第一个问题是关于悬崖的,你们会准备一些模块作为输入吗?你们的崖壁mesh是由什么组成的?

A:(译者:没有模块作为输入,随后演讲者又将崖壁工具的逻辑概括了一遍)

Q:另一个问题是关于河流的。河流正常来讲是从地势高的地方流到地势低的地方,但如果你的路径错了你就会从下流到上。那么你们是怎么控制的呢?

A:这取决于用户。它们需要确保水流是正确的,即水是从上流到下的。如果用户真的这么做了,也不会造成什么数据破坏,只是FlowMap自身会比较奇怪。嗯,我们并没有系统检查来避免这种情况。关卡美术师需要确保河流总是合乎逻辑的。

Q:所以说你们需要自己在地形上行走来检查错误?

A:是的。。啊不过我们也有调试工具来检查,水上会有箭头显示方向,所以可以较容易观察出来水流的方向是否正确。


最后一个问题是关于,当你在规划一片需要手动编辑的区域时,是否会确保一切都固定下来了。
演讲者并没有解释完。

另一版分享的Q&A

另一版分享

Q:有多少物种在(译注:。。。后边没听清)

A:物种的数量受限于游戏中我们的内存预算。对于FarCry5中我们有三个主要的生态,一个特定的生态大约有 20 个物种。我们还必须小心从一个生态到另一个生态,因为在那些区域中,实际上需要将那些资产都加载到内存中,因此所有这些都经过计算以允许这种类型的过渡。


Q:(译注:没听清)

A:使用 Houdini 真的很棒,它让管理游戏性能变得轻而易举的。因为我们只需要去在配方中移动一个滑块然后保存 HDA ,然后第二天早上一切都会更新,随后我们就会看到,哦我们提升了1FPS的帧率~


Q:(译注:大概是问多少人和多少时间在开发工具)

A:一个半的人力来开发工具。我们是两个开发者。我是一直都在这个项目的,而我有个助手,他大概有一半的时间在这个项目。至于多少时间。。。我们是首先攻克了生态工具,当它被使用后,我们就有了些自由的时间,然后我们就开发了其他工具,我们持续迭代了大概 X年(译注:具体多少年实在听不清)。但我们是有些空闲时间来添加额外的东西的。因为就像活水工具和崖壁工具,实际上不在计划之内,但我们有时间去做。


Q:(译注:大概是问这么棒的工具未来会不会复用)

A:它确实很模块化,这是设计好的。我们确保项目特定的数字资产从管线数字资产中分离出来,这样我们就可以复用管线的数字资产来为另一个项目构建配方等等,所以项目可以自己定制。

译者内容索引

至此,《Far Cry 5 的程序化世界生成》已经都翻译完毕。内容目录如下:

其中:

  • 1~5 在《GDC翻译:Far Cry 5 的程序化世界生成(第一部分:1~5)》
  • 6 在 《GDC翻译:Far Cry 5 的程序化世界生成(第二部分:6-崖壁工具)》。
  • 7 在《GDC翻译:Far Cry 5 的程序化世界生成(第三部分:7-生态工具(Biome Tool))》
  • 剩下所有部分包括Q&A在本篇。

GDC翻译:Far Cry 5 的程序化世界生成(第四部分:总结和QA)相关推荐

  1. GDC翻译:Far Cry 5 的程序化世界生成(第一部分:1~5)

    原视频链接:https://www.gdcvault.com/play/1025215/Procedural-World-Generation-of-Far PPT链接:https://www.gdc ...

  2. GDC翻译:Far Cry 5 的程序化世界生成(第三部分:7-生态工具(Biome Tool))

    下面来看生态工具(Biome Tool).这个工具的目标是用生物内容填充整个世界. 容我说一下,这可能是本次演讲中最大的部分了,有太多的特性需要涵盖.主要是因为自然界有很多微妙之处 ,我们也想复现出很 ...

  3. GDC翻译:Far Cry 5 的程序化世界生成(第二部分:6-崖壁工具)

    下面来看崖壁工具. 这个工具的目的是在大型地形表面上生成崖壁几何体,它作为地表之上一个具有更多细节的"皮肤". 总览 这部分的演讲内容很大,所以我将给出这部分的总览: 以前的技术 ...

  4. GDC翻译:Ghost Recon Wildlands 中的地形工具与技术

    原视频链接:https://www.gdcvault.com/play/1024029/-Ghost-Recon-Wildlands-Terrain 带注文PPT链接:https://www.gdcv ...

  5. 故事工程学:人工智能和程序化叙事生成

    引言 程序化叙事生成(Procedural Narrative Generation)是程序化内容生成(Procedural Content Generation)的一个子概念.程序化内容生成代表着一 ...

  6. 读书笔记 PCG in Games 程序化内容生成 介绍

    总起 最近入手一本神书--<人工智能与游戏>,它介绍了AI与游戏相辅相成的关系,并且梳理了整个游戏AI的知识脉络.它可以当成游戏AI目录书籍,薄薄的一本书引用了800多篇文献. 游戏中我们 ...

  7. 读书笔记 PCG in Games 程序化内容生成4 分型、噪声和代理,地形生成

    总起 本文主要基于Procedural Content Generation in Games第四章介绍地形生成,给游戏角色提供可以站立的地面. 关于PCG in Games之前的笔记可见: 第一章读 ...

  8. 【UE4+Houdini+Bridge】程序化地形生成和野外植被撒点工具制作思路

    B站制作过程展示: Houdini To UE4 程序化地形生成制作过程与效果展示 Github Houdini与HDA源文件:Houdini-PCG-Environment-Generator 最终 ...

  9. 我的世界自动生成服务器主城指令,我的世界生成主城的指令

    我的世界中,玩家们可以通过命令方块快速生成一个主城出来,许多玩家还不知道生成主城的命令是什么,接下来小编就来告诉大家,希望对大家有所帮助. 正确答案 游戏中生成主城需要在命令方块中使用四个指令,分别为 ...

最新文章

  1. Demuxed:编解码器和压缩的未来
  2. fastai学习笔记——安装
  3. Non-resolvable parent POM for com.supermarket:supermarket:0.0.1-SNAPSHOT: Could not transfer artifac
  4. java技术不行有复试怎么办_复试答不上来怎么办?记住这四点不慌!
  5. 安卓gridview条目点击事件_敬业签的安卓手机版设置便签按正序排序教程
  6. 【C语言局部变量/静态局部变量/全局变量与静态全局变量
  7. Django_modelform组件
  8. mysql 性别以女生升序_MySql练习题
  9. 你的大三,推荐做的几件事
  10. file-saver 实现文件下载
  11. 微创脑科学上市破发:公司市值143亿港元 微创医疗是大股东
  12. python找零_python 找零问题 动态规划
  13. 网络通信TCP/UDP
  14. 【CS231n】十五、深度学习的高效算法和硬件设计_一只神秘的大金毛_新浪博客...
  15. 神经网络和pid有什么区别,基于神经网络的pid控制
  16. css设置按钮样式_使用CSS设置按钮样式的快速指南
  17. pandas数据上采样
  18. [SNS]Twitter
  19. 用Python绘制动态可视化图表,屌爆了
  20. 获得指定时间的下一天的N种方法

热门文章

  1. 相机拍照的一些原理,光圈,快门,焦距
  2. 法院对职业放贷人的认定标准
  3. MYSQL —— 一条SQL在MySQL中是如何执行
  4. 轻松学习之Linux教程一 ubuntu14.04+windows双系统安装
  5. NLP-C3-W1.1-神经网络和Trax模型
  6. 教你如何在你的程序或网站中接入聊天机器人(附实例分享)
  7. Linux下basename使用及代码实现
  8. 计算机科学专业则有27所院校,最新版亚洲大学排名
  9. 代码实现层序遍历二叉树(C语言)
  10. 基于PHP的餐厅微信点餐支付小程序设计与实现(任务书+开题+lunwen+前后台源码)