Quantumas,作者太NB了,俺发现俺菜得跟猪一样!!!

前不久一个名为“Quantumas”的3D Demo引起了我们的关注,其作者称“这个引擎整合了各种最先进的渲染技术,在画质上超越了虚幻3,部分超越了CE2”,而我们在这个Demo中也的确看 到了高阶动态范围、多频软阴影、空间环境遮掩、HDR景深、全局光照、体散射、次表面散射,动态天空,多线程渲染等以往仅在国际一流引擎中看到的先进图形 技术。而现在它们都被集成在这个引擎中,而且作者还作出了自己的改进。

作为一直关注3D技术发展的网络媒体,我们不仅关注国外技术的发展,更关注国内的研发实力,所以我们对这个Demo的出现产生了极大的兴趣,在国内 主流游戏图形技术与国外还有相当差距的情况下,是什么人,在怎样的环境下制作出了这个代表着一流图形技术的3D引擎Demo? 经过我们的努力,有了如下的采访记录。

1、首先介绍一下自己吧。

请直接称呼我Dex,我今年23岁,毕业于计算机科学系,属于独立开发。(因为一项非常特殊的原因,我希望暂时不透露我的学校)

国内“Quantumas”3D引擎开发者Dex访谈

2、你学习3D技术的经历是怎样的?

我对3D技术的爱好始于CS时代,但真正的学习始于大四。

3、是什么激发了自己开发这个Quantumas引擎的想法?它的主要特点和长处是什么?

我最开始做Quantumas引擎只是为了个人研究只用,但过了一段时间后,我发现我可以以核心技术作为内核来开发一个比较通用的渲染框架,从而可 以让这套工具实用化。Quantumas的主要特点是高性能高画质的次时代渲染。 和CryEngine2的策略略有不同的是,在性能和画质发生矛盾时,我主要选择性能。其实这个demo中的各个片段来自于后半期开发的各个阶段,因此属 于同步开发。比如在演示中soft shadow一节,当时我的全局光照算法并未成熟,所以可以看到一点辐照跳跃的现象(当然也有些是因为视频压缩引起的)。

国内“Quantumas”3D引擎开发者Dex访谈

4、觉得在开发这个引擎中遇到的最大的困难是什么?

最大的困难主要有两方面,其一是一个足够灵活的,足以支撑各类算法的软件框架,我最后使用数学的手段建模,然后按照敏捷开发的思路进行细化。让我比 较满意的是,开始的模型比较精确,所以后期基本上没有大的变化,节约了不少时间;其二是寻找一套稳定的,并且可以在性能和质量之间达到平衡的渲染算法。 我试验了很多不同的技巧和技术,同时也自己研发了几项算法,才最后定稿。但现在还处于beta阶段,依然有个别参数和运算细节有待改进。

5、你自己认为"总体来说Quantumas的画质在虚幻3之上,部分在CryEngine2之上",为什么这样说呢?能举例来说 有哪些具体技术处理方法比它们强么?

虚幻3的渲染技术大多是2004年以前的。超越它并不奇怪。当然,虚幻3是一套非常灵活的引擎,你完全可以在它的基础上自己开发一套新的渲染管线, 因此,我提到的比较,是和UE3的内建渲染技术进行比较。而很多应用需要的正是内建效果,他们需要节省开发图形系统的时间。因此提供一套优质,现成的渲染 系统是必要的。部分超过CE2也是基于这个道理。具体细节我标注在了视频中的图表上(需要看高清版)。基本上视频中列举的几个关键技术是 Quantumas对比UE3和CE2的强项,只有全局光照在画质上输于Crytek新研发的CryEngine3。另外还有一些没有比较的但有十分关键 的技术,比如海洋渲染,这些方面CE2依然是老大。

国内“Quantumas”3D引擎开发者Dex访谈

6、DEMO中的各种模型都是自己建模的么?

我在credits中提到了Leviathan、Hebe模型,以及油桶纹理分别来自UT3、RenderMonkey和Crysis,而神庙模型 来自一个不愿意透露姓名的网友。除此之外是我自己在3dsmax中制作的。模型都很简单,但其实简单的模型最能体现渲染特性。

7、你的开发环境是怎样的?硬件配置如何?

我的电脑不算很古,但对于次时代还是比较逊色。CPU是Core 2 Duo E6320,显卡是GeForce 960 0GT 512MB,操作系统是Vista 32bit,内存是4GB (其实只有3.25GB可用)

国内“Quantumas”3D引擎开发者Dex访谈

国内“Quantumas”3D引擎开发者Dex访谈

8、DEMO中的音乐、色彩、模型都搭配的很好,自己有过这方面的学习经历么?

我没有学过美术,但我其实很喜欢艺术。因为时间关系,我从来没有真正学过。demo中的搭配还凑合可能是一种直觉吧。

9、你对AMD和NV的显卡,尤其是新一代DX11显卡是如何看的?对于3D开发来说谁的更友好?

其实NV的显卡就目前来看,开发更方便,在各种古怪的算法下嗦表现出的性能更加稳定。我没有用过最新的AMD显卡,所以不能妄做评论。新一代的 DX11技术实质上是顺应了目前通用计算的势头。从图形的角度看,光栅化的渲染方式显然是有局限的。未来很可能会被光线跟踪代替,而后者需要强大的通用计 算性能和灵活性。

10、当前的千元级显卡运行这个DEMO的速度能有多少帧/秒?或者你运行这个DEMO的平台的运行速度是多少?

我的9600GT在跑这些场景的时候(1280x720),至少在80帧以上,大部分有100多帧。目前千元级显卡的性能至少是9600GT理论性 能的2~3倍。

11、你对国内的3D技术发展水平是如何看的?

目前国内的3D技术还相对落后,也许是不重视,也许是正在秘密开发。总之,和目前世界一流大作比起来的差距还比较明显。但是,国内其实并不缺少这类 人才,至于为什么还没有相应产品问世,我不是很清楚。

12、是否因为这个DEMO收到了国外公司的邀请,是什么类型的邀请呢?国内公司有类似反应么?

国外方面,我收到了Crytek和另外几个独立小组的邀请。因为时差关系,还没有展开详细讨论。在国内,也有不少公司在和我接触,以TX公司最为主 动。

采访后,我们惊诧于开发者的年龄,23岁,其实才刚刚踏出大学校园不久,就有了这样的技术实力。套用一句古话就是“江山代有才人出”。其实在国内有 这样出类拔萃技术实力的开发者的绝对数量也许并不少,很多玩家也曾在育碧等国际厂商的3D大作中看到众多中国开发人员的名字。但为什么我们在现实中只能惊 叹于国外3D图形引擎的先进,而无法在国内的作品中看到顶尖技术的应用。这不仅是人才的问题,也是运营机制、国内开发环境的问题。

在采访中我们还得知,有人爆料称一些国内的公司已经打算从Dex公布的任何信息和图片中猜测思路、挖掘算法。我们无法判断这件事情的真假,也和 Dex一起,都很怀疑这样能有多大的做的作用,但偏偏这些事情有可能在国内发生。

视频:

高清版视频:
http://www.vimeo.com/12382186

更多精彩图:

国内“Quantumas”3D引擎开发者Dex访谈

国内“Quantumas”3D引擎开发者Dex访谈

国内“Quantumas”3D引擎开发者Dex访谈

国内“Quantumas”3D引擎开发者Dex访谈

国内“Quantumas”3D引擎开发者Dex访谈

转载于:https://www.cnblogs.com/zengqh/archive/2012/09/14/2684582.html

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

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

相关文章

python制作查询网页_peewee数据查询之分页返回——python学习笔记

请求示例:后端代码# 查询客服列表kf.route("/list", methods[POST])def kf_list():start request.values.get(start)length request.values.get(length)try:find model.py_user_kf.select().order_by(model.py_user_kf.create_time).paginate(int(star…

java薪资年龄交叉表_巧用参数实现交叉表行列互换

对于普通的没有olap分析功能的快逸报表而言,一旦发布到web页面后,其样式就被固定了,如果想把报表换种形式展现通常的做法是重新设计一张报表模板来实现,难道快逸报表就没有一种特殊的方法可以解决这样的需求吗?答案就在…

spring 环境

引用:http://www.189works.com/article-96241-1.html 准备阶段: 到Spring官网下载所需的API包,其中spring-framework-X.X.X.RELEASE-with-docs.zip压缩包需要下载,里面的dist目录下有所需的API,还有一个是com.springsource.org.apache.common…

php 上传多文件_php 多文件上传的实现实例

首先向大家讲解一下实现的方法。要实现多文件上传,我们可以在form表单中添加多个input file域,然后将这些input file的name属性设置为相同的名称且使用数组的形式命名,例如filename[]。至于文件上传的php代码和单个文件上传是一样的道理。下面…

JavaScript代码优化实战之一:缓存变量,关键字过滤

无意中看到某网站的一段JS代码: 1 function clearSearchText(){2 var searchtext document.getElementById("searchwordl").value3 document.getElementById("searchwordl").value"";4 }5 function replaceALL(){6 va…

html.parser python_python模块之HTMLParser

HTMLParser是python用来解析html的模块。它可以分析出html里面的标签、数据等等,是一种处理html的简便途径。 HTMLParser采用的是一种事件驱动的模式,当HTMLParser找到一个特定的标记时,它会去调用一个用户定义的函数,以此来通知程…

php 5.4 aws,使用 Amazon EC2 管理 AWS SDK for PHP 实例 - 适用于 PHP 的 AWS 开发工具包

AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门。本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。使用 Amazon EC2 管理 AWS SDK for PHP 实例以下示例演示如何&…

python图片分类毕业设计成果报告书_毕业设计成果报告书模板.doc

毕业设计成果报告书成 果:姓 名:学 号:专 业:区 队:指导老师:二〇XX年X月目  录TOC \o "1-3" \h \z \u HYPERLINK \l "_Toc432664597" 一、选题背景 PAGEREF _Toc432664597 \h 1HYPE…

常用正则表达式例子

1。^\d$  //匹配非负整数(正整数 0) 2。^[0-9]*[1-9][0-9]*$  //匹配正整数 3。^((-\d)|(0))$  //匹配非正整数(负整数 0) 4。^-[0-9]*[1-9][0-9]*$  //匹配负整数 5。^-?\d$    //匹配整数 6。^\d(\.\d)?$  //…

msf生成php,使用msfpayload生成后门(asp,aspx,php,jsp,exe)等

msfpayload与msfencode参数说明执行msfpayload -h查看都有哪些参数执行msfencode -h查看都有哪些参数生成backdoor类型可以生成asp、aspx、php、jsp、war、exe等多种类型,下面介绍的使用方法就不一一测试了.msfpayload生成linux backdoor目标机器运行linux2,本机监听下端口,使用…

概括ADO.NET数据库连接的所有形式(基础)

概括ADO.NET数据库连接的所有形式(基础) 可能大家进来会喷笔者,这么基础的知识还放在首页。那么笔者就要问问大家了,你可能熟悉其中部分数据库读取的形式,但是熟悉全部的估计很少,或者你完全忘记了,因为这些…

python 进程池不足_python 进程池pool简单使用

平常会经常用到多进程,可以用进程池pool来进行自动控制进程,下面介绍一下pool的简单使用。需要主动是,在Windows上要想使用进程模块,就必须把有关进程的代码写if __name__ ‘__main__’ :语句的下面,才能正常使用Wind…

php opendir 不能用,PHP opendir() 函数

打开一个目录,读取它的内容,然后关闭:$dir "/images/";// Open a directory, and read its contentsif (is_dir($dir)){if ($dh opendir($dir)){while (($file readdir($dh)) ! false){echo "filename:" . $file . &q…

程序集

程序集 在C#中,我们要使用反射,主要有三个方面: 第一,反射程序集,模块,类的成员以及成员的一些信息; 第二,接下来就是动态调用类的成员方法; 第三个方面就动态产生程序集…

从像素坐标到相机坐标_【视觉知识】机器视觉几何坐标概论

作者:林青春来源:知乎一、机器视觉几何坐标概论机器视觉系统有三大坐标系,分别是:1、世界坐标系,2、摄像机坐标系,3、图像(像素)坐标系。1、世界坐标系世界坐标系(Xw,Yw,Zw)是目标物…