问题标签 [occlusion]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1576 浏览

opengl - 在 GPU 上计算图像相似度 [OpenGL/OcclusionQuery]

OpenGL。假设我已经绘制了一张图像,然后使用 XOR 绘制了第二张图像。现在我在某处有非黑色像素的黑色缓冲区,我读到我可以使用着色器来计算 GPU 上的黑色 [ rgb(0,0,0) ] 像素?

我还读到它必须与 OcclusionQuery 做一些事情。 http://oss.sgi.com/projects/ogl-sample/registry/ARB/occlusion_query.txt

有可能吗?怎么做?[任何编程语言]

如果您对如何通过 OpenGL/GPU 找到相似性有其他想法 - 那也很棒。

0 投票
4 回答
1074 浏览

algorithm - 遮挡算法集合

遮挡算法在 CAD 和游戏行业是必不可少的。我认为它们在两个行业中是不同的。我的问题是:

  1. 这两个行业分别应用了什么样的遮挡算法?
  2. 有什么区别?

我正在做CAD软件开发,我们采用的遮挡算法是——将物体标识符设置为它的颜色(一个整数),然后渲染场景,最后读取像素找出可见物体。性能不是很好,所以我想在这里得到一些好的想法。谢谢。


在阅读了回答者之后,我想澄清一下,这里的遮挡算法意味着“遮挡剔除”——在将它们发送到管道之前找出可见的表面或实体。

通过谷歌,我在gamasutra找到了一个算法。还有其他好的想法或发现吗?谢谢。

0 投票
4 回答
5743 浏览

opengl - OpenGL:如何确定一个 3D(渲染)点是否被它前面的其他 3D(渲染)图元遮挡?

在我的 OpenGL 程序中,我按顺序执行以下操作:

为了显示点信息(比如点标识符/编号),我使用gluProject ()将点的 3D 坐标转换为 2D 窗口坐标。我使用glRasterPos () 和 2D 字符渲染代码在该 2D 窗口位置写入点标识符。

当渲染点被另一个图元遮挡时,由于 OpenGL 管道中发生的自动遮挡测试和深度测试,它会自动不显示。但是,我的点标识符文本显示在点旁边,即使它被遮挡,因为我没有得到这个遮挡信息。

如何确定一个 3D(渲染)点是否被它前面的其他 3D(渲染)图元遮挡?或者有没有更好的方法,只有在不被遮挡的情况下才在旁边显示点信息文本?

注意:我知道需要额外渲染通道的方法。我觉得这些对我的目的来说很昂贵。

0 投票
1 回答
1113 浏览

opengl - 八叉树的遮挡

我刚开始学习 opengl 并编写第一人称射击游戏,但是当我绘制 5000 个立方体时,我的帧率非常糟糕。所以现在我正在尝试使用八叉树执行遮挡和剔除。我感到困惑的是从哪里投射光线。我是否只能从近平面的 fustrum 投射它们?似乎我会错过扩展的部分fustrum。任何帮助表示赞赏。

0 投票
1 回答
2394 浏览

opengl - 识别 OpenGL 中的可见顶点

识别从特定视点可见的顶点的最有效方法是什么?

我有一个由几个 3D 模型组成的场景。我想为每个顶点附加一个标识符(ModelID,VertexID),然后从各种视点生成 2D 图像,并为每个图像生成一个可见顶点标识符列表(本质上这是用于图像处理应用程序)。

最初我想在顶点法线和相机视图向量之间执行点积,以确定顶点是否面向相机,但是如果模型被另一个对象遮挡,则此测试将不起作用。

提前致谢

0 投票
1 回答
637 浏览

c++ - 视差着色器

我最近尝试将视差遮挡映射添加到我的景观渲染器中,它看起来和工作正常,但我遇到了一些问题。

这里有两张图片(一张只有法线贴图,另一张也有视差遮挡贴图)。

我有一些用红色圆圈标记的混叠问题(您可能希望通过它的链接查看完整图像)。

替代文字

替代文字

这些显然是光线近似的结果,它是视差遮挡技术的一部分,但我很确定有一些方法可以改善视觉效果。

有人能指出删除这些的方法吗(可能是一些摘要、论文、研究等)?

谢谢。

0 投票
5 回答
13524 浏览

opengl - 3d 遮挡剔除

我正在用 C++/openGL 编写一个类似于 Minecraft 的静态 3d 块世界。我正在努力提高帧速率,到目前为止,我已经使用八叉树实现了截锥剔除。这有帮助,但我仍然看到中等到差的帧速率。下一步是剔除被更近的立方体隐藏在视点之外的立方体。但是,我还没有找到很多关于如何实现这一点的资源。

0 投票
2 回答
1440 浏览

opengl - OPENGL ARB_occlusion_query 遮挡剔除

我很好奇 GPU GEMS 1 中建议的用于执行一定数量查询的遮挡剔除的方法。使用所描述的方法,您不能相互测试各个盒子,所以您应该执行以下操作吗?

测试框 A -> 渲染框 A

测试框 B -> 渲染框 B

测试框 C -> 渲染框 C

等等...

0 投票
1 回答
576 浏览

opencv - 检测视频帧中的真实世界对象

我们正在开展一个涉及现实世界和虚拟对象的交互遮挡的项目。我们需要实时检测来自网络摄像头捕获的真实对象。我们无法找到任何相关概念来检测此类真实对象并使其表现为虚拟对象的物理对象。

我们需要的是能够预定义对象的一些参数,使我们能够在视频帧中检测到它,以便可以为它们分配一些物理属性以与虚拟属性进行交互。

请向我们建议一些方法,使我们能够定义一个对象,从而帮助在实时网络摄像头捕获中检测它。

0 投票
1 回答
787 浏览

opencv - 视频帧中真实对象的配准

我想问是否可以在openCV内部处理将虚拟对象注册到真实图像(真实世界对象)中。在检测到真实捕获的图像帧中的感兴趣区域后,我想用虚拟对象的像素替换真实图像的像素,该虚拟对象应该作为新生成图像的真实部分出现。

请他