Doom和Quake 3D渲染之间的区别

时间:2011-11-02 09:50:19

标签: 3d raycasting quake

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

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

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

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

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

P.S。我知道Quake的源代码是可用的,但id软件的FTP已经停机数周了,我在其他任何地方都找不到它。如果有人知道在哪里可以找到它,请告诉我。

4 个答案:

答案 0 :(得分:15)

要指出的是,Doom的渲染引擎并不是一个raycaster(就像Wolfenstein 3D一样) - 也就是说,它不能通过为屏幕的每一列投射光线来实现。相反,它是一个BSP引擎。级别的几何图形被划分为二叉树,并且该树向下移动以渲染场景。

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

由于你解释的原因,无法进行真正的垂直向上和向下看 - 像Heretic和Hexen这样的游戏增加了使用Y剪切的能力,这本质上是一个黑客攻击。这就像扩展屏幕的垂直高度,然后提供一个上下移动的窗口。

您可以找到有关the Doom wikiWikipedia的更多信息 - 两者都来自我在2年前写过的write-up

希望这有帮助!

答案 1 :(得分:3)

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

与Doom相比,Quake拥有高级照明(通过光照贴图),阴影,更好的纹理贴图(通过MIP贴图,减少在观察远处物体时可观察到的锯齿伪影)和3d对象而不是精灵。它的游戏空间本身并不是平坦的,因为Doom和渲染允许你以不同的角度看待事物。

可以通过herehere找到更多详情。

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

答案 2 :(得分:0)

厄运引擎有很大的局限性。每张地图基本上都是2d,3d外观很大程度上是一种错觉。地图上的每个点只有一个楼层和一个天花板,因此永远不会有过度通道。没有坡道,只有楼梯和墙壁。所有垂直线都是垂直绘制的,没有向上和向下看。

答案 3 :(得分:-1)

厄运的3D外观不仅仅是一种幻觉而不是地震,地震引擎可以显示相同的地图(如果移植)作为厄运,如果你不允许向上/向下看,那么它仍然是更真实的3D因为它在引擎盖下做了什么,尽管它看起来像厄运一样?还是会减少3d呢?结果会是一样的。