12

过去几周我一直在研究(旧的)3D 渲染技术,并且认为我现在对 Doom 中的 3D 渲染的工作方式有了相当的了解。它使用光线投射来渲染 3D 场景,使用精灵作为对象,因此不是“真正的”3D。它也不允许真正的向上/向下查看,只能通过 Y 剪切。

Quake 是 ID 的第一个“真正的”3D 引擎,具有可以从不同角度查看的对象并允许上下查看。

现在我在研究这些技术时经常听到这种“真正的”3D,但我无法清楚地解释这种真正的 3D 究竟意味着什么。Quake 渲染与 Doom 渲染有何不同?

Quake 世界是否使用 3D 顶点并且它们都是投影而不是交叉点的光线投射?

我很想听听对差异的明确解释!

PS 我知道 Quake 的源代码是可用的,但是 id 软件的 FTP 已经关闭了数周,我无法在其他任何地方找到它。如果有人知道在哪里可以找到它,请告诉我。

4

3 回答 3

15

需要指出的是,Doom 的渲染引擎不是光线投射器(就像 Wolfenstein 3D 那样)——也就是说,它不能通过为屏幕的每一列投射光线来工作。相反,它是一个 BSP 引擎。关卡的几何结构被分成一棵二叉树,然后沿着二叉树向下走以渲染场景。

在树中的每个点都有两个子树,它们的行走顺序取决于玩家相对于分隔它们的线的位置。这样可以确保它们按顺序渲染,以便远处的墙壁被更近的墙壁遮挡。

由于您解释的原因,真正的垂直上下查看是不可能的 - 诸如 Heretic 和 Hexen 之类的游戏增加了使用 Y 剪切的能力,这本质上是一种 hack。这就像扩展屏幕的垂直高度,然后在其中提供一个上下移动的窗口。

你可以在 Doom wikiWikipedia上找到更多信息- 两者都来自我在 2 年前写的关于所有东西的文章。

希望这可以帮助!

于 2011-11-06T23:55:27.753 回答
4

我认为没有一个统一的定义。也许最真实的 3d 可能与您在现实生活中看到的无法区分,这意味着对象、照明、阴影渲染的照片般逼真的质量,充分考虑实时发生的变化,创造深度感和也随着观看者的位置、他们对左眼、右眼或双眼的使用以及焦点的变化而变化。目前我们的电脑和电视还没有这么强大的技术。迄今为止,现实生活中的体验胜过市场上普通消费者的所有产品。

与 Doom 相比,Quake 具有高级照明(通过光照贴图)、着色、更好的纹理映射(通过 MIP 贴图,减少了在观察远处物体时可观察到的锯齿伪影)和 3d 物体而不是精灵。它的游戏空间并不是天生平坦的,因为《毁灭战士》和渲染允许您从不同的角度看待事物。

更多细节可以通过这里这里找到。

如果您对如何完成所有这些很酷的 Quake 事情感兴趣,请阅读 Michael Abrash 的书籍,例如Rambles in RealtimeGraphics Programming Black Book

于 2011-11-02T11:05:54.720 回答
-1

厄运引擎有很大的局限性。每张地图本质上都是 2d 的,3d 的外观在很大程度上是一种错觉。地图上的每一点只有一层一层天花板,所以永远不可能有天桥。没有坡道,只有楼梯和墙壁。所有垂直线都是完全垂直绘制的,没有上下看。

于 2014-03-25T07:09:36.877 回答