gpt4 book ai didi

c++ - 我是否错误地渲染了 BSP 树?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:49:18 24 4
gpt4 key购买 nike

我有一个 BSP 树加载到内存中。我首先找出我所在的叶子。接下来,我解码 PVS。然后,我遍历该 PVS 中的每个区域,看看它是否位于我的截锥体内。

有人告诉我这是不正确的渲染方式,我实际上应该通过遍历 BSP 树来进行从后到前的渲染。我该怎么做?我见过很多不同的方法,这就是我问的原因。

例如,Quake 3 BSP 渲染说:遍历 BSP 以确定相机位于哪片叶子中。检索并解压缩此叶子的 PVS,遍历 PVS 并在 BSP 中标记叶子。从近到远遍历 BSP如果没有标记节点,则跳过它。针对相机 Frustrum 测试节点边界框​​。将当前叶子添加到再现列表

这是否仍然是今天的标准方式,或者至少对于更简单的游戏而言。

最佳答案

正如 OrgnlDave 所说:

当你绘制图元时,放置在 z-buffer 前面的像素将被绘制,程序着色器将被执行。但如果像素在场景后面,则该像素将被拒绝。没有义务从前到后制作这样的绘图,但性能上的提升是最差的。

但是,如果您使用混合对象,则需要在每个实体对象之后绘制这个,并从后向前绘制。因为您需要将颜色与紧随其后的对象混合。

关于c++ - 我是否错误地渲染了 BSP 树?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8876095/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com