首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenGL四元重叠

OpenGL四元重叠
EN

Stack Overflow用户
提问于 2012-02-28 17:41:20
回答 1查看 511关注 0票数 0

假设我有两个四边形是重叠的,形成一个X。

有可能阻止这种情况发生吗?这样GPU就可以移除这些重叠的四角体之一?

这个案子是关于广告牌的,这些广告牌能穿透静态的墙壁。在理想的情况下,当广告牌与墙壁重叠时,我不愿将它移除,而不用花费大量的CPU资源(我有大约10.000块广告牌和墙壁)。

目前,我的广告牌是通过计算物体和相机之间的角度来实现的。

EN

回答 1

Stack Overflow用户

发布于 2012-02-28 18:35:16

目前我的广告牌是通过计算物体和相机之间的角度来实现的。

完全错误的方法。通常的OpenGL透视投影是平面平行投影。因此,这意味着你通常希望你的广告牌与你的近/远剪裁平面是共面的。

这是最容易做到的,采取逆的左上角3×3部分的世界-眼空间变换矩阵,并使用X任何Y列作为你的广告牌四元的基向量。

正因为如此,旋转矩阵的逆是转置。因此,只需将摄像机转换矩阵的第一行和第二行向量(每个仅为前3个元素)作为广告牌的基础。别在这里乱搞计量学或角度,那你就弄错了。

这种重叠通常通过深度测试来处理。对于半透明几何,禁用深度写入和预排序您的几何远近。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9486978

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档