2012-07-27 193 views
6

我在过去几年里一直在Blender中做一些3D图形,我也尝试制作3D游戏(在Unity 3D中)。我也非常喜欢玩电脑游戏,我很惊讶有一件事:为什么游戏渲染器与3D应用渲染器相比如此之快?

与游戏渲染器相比,为什么3D应用程序的渲染器“如此”慢“?

这不是一个令人反感的问题。我只是好奇。例如,我可以玩“孤岛危机”或者“NFS:无缝运行”,但是如果我在Blender中创建了一个类似的场景,我相信一个帧的渲染将会持续下去。

我在互联网上发现了一些信息(比如“因为游戏渲染器使用很多假货和黑客”),但我不是图形程序员,我真的很感谢专家的回答。

+1

如果您有OpenCL或CUDA功能的渲染器,您会惊讶您呈现场景的速度有多快。不像游戏那样非常实时,但几乎在那里。 – Hassan 2012-07-27 14:34:57

回答

8

Blender,Maya和3D Studio Max等系统通常为帧渲染进行多重反射光线追踪。他们的引擎可以让你做一些事情,如逼真的玻璃和烟雾效果以及环境照明。游戏引擎具有漂亮的外观,但这些东西的照片不太现实。此外,哈桑的评论是正确的:Blender不使用你的图形卡进行渲染,它都是CPU驱动的(默认情况下)。 GPU在渲染场景中常见的并行处理类型要好得多,并且显卡厂商花费大量资金开发技术以快速运行游戏。即使如此,一些针对非常高质量photorealistc效果的算法也很难高效地为GPU实现。人们一直在谈论实时光线追踪10年,并且有一些候选人(Nvidia的OptiX,英特尔的MIC architecture

+0

我不知道渲染软件默认不使用你的GPU。有趣的事实。 – 2012-07-27 15:12:56

+1

@Dan:不是所有的渲染软件,只是Blender。如果有没有使用图形卡的商业建模程序,我会感到惊讶。 – 2012-07-27 16:14:28