gpt4 book ai didi

opengl - 如何在opengl中绘制平截头体

转载 作者:行者123 更新时间:2023-12-04 20:07:16 25 4
gpt4 key购买 nike

我想用 GL_LINE_STRIP 画一个平截头体.这些平截头体顶点的坐标是什么?我有模型 View 和投影矩阵。是否可以使用这些矩阵计算着色器本身的坐标?

最佳答案

如果你想要平截头体角的世界空间坐标,你需要做的就是将 8 个角点从 NDC 空间(每个维度从 -1 到 1,所以角点很容易枚举)投影回世界空间。但不要忘记你必须除以 w :

c_world = inverse(projection * view) * vec4(c_ncd, 1);
c_world = c_world*1.0/c_world.w;

虽然我是用 GLSL 语法写的,但这只是作为伪代码。您可以在着色器中执行此操作,但这意味着必须多次计算(取决于您将其放入哪个着色器阶段)。至少在 CPU 上预先计算逆矩阵通常要快得多。

关于opengl - 如何在opengl中绘制平截头体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24085238/

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