<avatar: frontiers of pandora>技术overview

在这里插入图片描述
https://www.eurogamer.net/digitalfoundry-2023-avatar-frontiers-of-pandora-and-snowdrop-the-big-developer-tech-interview
https://www.youtube.com/watch?v=LRI_qgVSwMY&t=394s
主要来自euro gamer上digital foundry对于avatar的开发团队Massive工作室的采访,使用的是SnowDropEngine(divition的那个)
鉴于Avatar是被DigitalFoundry评为2023的最牛画面游戏(基本上和AlanWake2五五开),所以记录下;
游戏在角色和室内方面表现一般,潘多拉星球上的自然世外美景,真的是一绝,养眼!!

overview

avatar整体的评分和销量不算好,画面和技术实现方面算是一个长板,技术方面在当前大盘硬件上可以说是做到了相当不错的水平;
该有的技术都有一个实现;

system requirements

其实如果看看一些游戏直播,对于云游戏比较多的玩家,尤其是看了很多开发商的高质量宣传片,可能感觉画面也就那样;
这里就要提到,在评测画面时候,需要考虑到目标的配置以及帧数;
像今年比较热的TheFinals是pvp游戏,我们正常玩就需要120fps级别,那么游戏的场景设计到技术选型就不能往高拉;
同理一些3080-4090才能跑出效果的画面,这个和大盘配置rtx3060已经是有代差了,所以也不能放在一起说。
所以这里我们重点谈的还是在主流配置(ps5,xbox,rtx3060)上能跑的比较溜的情况下的画面;
这里avatar就是一个属于比较务实的,面向console和大盘pc配置的:

Operating system Windows 10, Windows 11 (64-bit versions)
Processor AMD Ryzen 5 5600X @ 3.7 GHz, Intel Core i5-11600K @ 3.9 GHz, or better
RAM 16 GB (running dual-channel mode)
Video card AMD Radeon RX 6700 XT (12 GB), NVIDIA GeForce RTX 3060 Ti (8 GB), or better
Hard drive 90 GB available storage (SSD)
DirectX version DirectX 12

IGN这里的评测(https://www.youtube.com/watch?v=fG3BkxN4ji0)来看:
3080,4k,全高配,绝大多数也可以60fps;

主要技术

gi

RayTraced GI

  • probe做radiance cache
  • screen space去ray trace一段距离,如果miss就会使用probe里的radiance cache
  • 有反射:ssr混合ray traced reflection,有些地方也是用cubemap
  • dxr 1.1, inline比较重要

这点看来是比ddgi这种纯的probe based的要有更高的精度,其实也就是lumen类似的级别;
ray有guided特性,但是还不是restir(restir相关的digital foundry有问,这个相关的massive有研究以及在研究,但是没有实际性投入使用)

raytraced的时候,一些小的emissive的surface会跳过;

BVH

  • 是用low lod的geometry来做的bvn,材质相对简单,降低了shader variety,当然这个不好的地方就是反射时候会比较糙
  • 也不是所有的geometry都会进bvh,这个最终由TA决定
  • contact shadow有

在这里插入图片描述

render pipeline

  • 使用了大量的async compute:volumetric,probe raytracing&lighting
  • console上使用了mesh shader,也就是把mesh分成meshlet,然后花式GPUDriven(culling,occlusion和cmd submit);pc上担心兼容性问题所以没有用mesh shader(撇嘴)
  • 没有mesh shader的时候也尽量GPUDriven,这个已经标配了,没啥好多说的
  • pso的问题一直比较头疼,3G大小的pso,也没什么办法,这个真的应该优化下(@微软)

audio

问到开发者说什么事感觉比较nb的,说是音频,用了GPU的Raytracing来做音频的传递,所以整个propagation比较真实;

destruction & PCG

  • destruction:预切的碰撞,然后simulate,包括植被
  • pcg:大量的东西都是pcg的,这里的关键就是平衡pcg和手摆,一些poi就是pcg就好了;

misc

  • 其他的体积云也说到了,不过效果似乎一般,就不多说了;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/372110.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

iOS 启动连续闪退保护方案

版权声明:本文由刘笑江原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/79 来源:腾云阁 https://www.qcloud.com/community 一.引言 “如果某个实体表现出以下任何一种特性,它就具备…

实战Java内存泄漏问题分析 -- hazelcast2.0.3使用时内存泄漏 -- 2

hazelcast 提供了3中方法调用startCleanup:第一种是在ConcuurentMapManager的构造函数中,通过调用node的executorManager中的ScheduledExecutorService来创建每秒运行一次cleanup操作的线程(代码例如以下)。因为这是ConcuurentMapManager构造…

@SuppressLint(NewApi)和@TargetApi()的区别

转自:http://blog.csdn.NET/wbshuang09/article/details/44920549在Android代码中,我们有时会使用比我们在AndroidManifest中设置的android:minSdkVersion版本更高的方法,此时编译器会提示警告,解决方法是在方法上加上SuppressLin…

零基础自学编程前需要知道的知识

你是否适合编程?学习编程后能做什么?如何选择编程语言?有哪些免费的线上学习网站推荐?今天这篇好文将那些自学编程前需要了解和思考的问题都记录下来,希望能给那些刚刚开始或正准备自学编程的朋友们带去一些启发。 你是否适合自学编程 自学编程会是一个漫长而艰…

Eclipse设置黑色主题

1点击help--->install new software 2输入 http://eclipse-color-theme.github.com/update 3下载安装eclipse color theme插件如下图 4完成后点击windows--->preferences------>Appearance下多了一个Color Theme 5,点击选择喜欢的主题即可,也可以自己下载主…

wcf rest系列文章

http://www.cnblogs.com/artech/archive/2012/02/15/wcf-rest.html 需要注意的是,发布的服务,可以在web behavior中指定显示help页面。 http://localhost/ApplicationName/ServiceName.svc/help 需要注意的是,访问.svc的页面一定不要多加/;否…

登录:应用程序错误通知

几个月前,当我进行大型应用程序重构时,发现用于记录日志的基于log4j的代码确实令人讨厌,重复了数百次: if (LOG.isDebugEnabled()) {LOG.debug("Logging some stuff " stuff); }我想摆脱isXXXEnabled,这就…

如何分析线程转储–线程堆栈跟踪

本文是“ 线程转储”分析系列的第5部分。 到目前为止,您已经了解了线程的基本原理以及它们与Java EE容器和JVM的交互。 您还学习了HotSpot和IBM Java VM的不同线程转储格式。 现在是您深入分析过程的时候了。 为了使您能够从线程转储中快速识别问题模式,…

设计模式学习笔记(十三:原型模式)

1.1概述 用原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象。这就是原型模式的定义。 在某些情况下,可能不希望反复使用类的构造方法创建许多对象,而是希望使用该类创建一个对象后,以该对象为原型得到该对象的若干个…

翻译的一篇关于学习编程语言的小文章

Top programming languages to get a job in Toronto in 2017 在程序开发人员和软件工程师中最容易被提及的问题之一就是:“我要学的下一门编程语言该是谁?” 我想去选一个编程语言,我希望你能给我一些关于经常使用到的编程语言的建议&#x…

从linux内核启动,学习Linux内核启动过程:从start_kernel到init

一、实验步骤:1:运行menuos:a)cd LinuxKernel/b)qemu -kernel linux-3.18.6/arch/x86/boot/bzImage -initrd rootfs.img启动后启动了MenuOS。2:使用gdb调试跟踪menuos内核启动和运行过程;a)qemu -kernel linux-3.18.6/arch/x86/bo…

linux强制回收内存,Linu系统cache强制回收

LINUX的内存管理机制,一般情况下不需要特意去释放已经使用的cache。Cache机制的存在,使得Linux对磁盘的读写速度是有较大的好处的。 在 Linux 操作系统中,当应用程序需要读取文件中的数据时,操作系统先分配一些内存,将…

Google API:如何访问Google Analytics(分析)数据?

在深入研究Google Analytics(分析)API之前,了解一些Google Analytics(分析)术语及其关系总是很有用的。 Google帐户:要访问Google Analytics(分析),用户将需要一个Google…

设计模式学习笔记(十六:桥接模式)

1.1概述 将抽象部分与它的实现部分分离,使他们都可以独立地变化。这就是桥接模式的定义。 抽象类或接口中可以定义若干个抽象方法,习惯上将抽象方法称作操作。抽象类或接口使程序的设计者忽略操作的细节,即不必考虑这些操作是如何实现的&…

linux静默删除文件夹,Linux常用命令10 - unzip

zip 是最广泛使用的归档文件, 除了linux,windows也是非常的广泛。,支持无损数据压缩。 zip 文件是包含一个或多个压缩文件或目录的数据容器。接下来,我将解释如何使用 unzip 命令通过命令行解压缩 Linux 系统中的文件。 还有与之对应就是 zip…

python基础:迭代器、生成器(yield)详细解读

1. 迭代器 迭代器是访问集合元素的一种方式。迭代器对象从集合的第一个元素开始访问,知道所有的元素被访问完结束。迭代器只能往前不会后退,不过这也没什么,因为人们很少在迭代途中往后退。 1.1 使用迭代器的优点 对于原生支持随机访问的数据…

Linux将硬盘转化为pv,Linux扩展硬盘 物理卷(PV) 卷组(VG) 逻辑卷(LV)

1、给虚拟机添加两块新的sata虚拟硬盘,容量8G和10G# fdisk -l 命令2、分别在这两个硬盘上建立pvPvcreate /dev/sdb 创建一个物理卷/dev/sdb 磁盘名是 fdisk -l 查询出来的Pvscan 查看当前所有物理卷Pvdisplay 查看当前所有物理卷的详情3、创建VG,使得…

ubuntu 16.10 shu rufa meiy ou l e geng xi zhi hou

转载于:https://www.cnblogs.com/ganmk--jy/p/6035894.html

红旗linux 进不去图形界面,进不了红旗Linux6.0的图形界面请高手帮忙

习生 于 2008-11-02 11:08:42发表:引用:原帖由 zhaoruiqi 于 2008-11-2 10:03 发表 我的也是进不了图形界面,用文本安装后进系统也一样正常按rtl的方法对xorg.conf进行修改,已经能进入图形界面。你看看楼上rtl的回复的能否对你有帮助。zhaoruiqi 于 2008-11-02 10:0…

基于Activiti工作流引擎实现的请假审核流程

概要 本文档介绍的是某商用中集成的Activiti工作流的部署及使用,该框架用的Activiti版本为5.19.0。本文档中主要以一个请假流程为例子进行说明,该例子的流程图如下: 这是一个可以正常运作的工作流业务了,但是它也有不足的地方&…