问题标签 [occlusion-culling]
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.
ios8 - SceneKit - 遮挡剔除
我在 iOS 8 上使用 SceneKit 已经有一段时间了,最近,我遇到了需要检测节点是否没有出现在视口上的情况。遮挡剔除可能是一种可能的解决方案。因此,SceneKit 是否提供任何遮挡剔除选项,如果没有,我可能想尝试哪些其他建议?谢谢!
opengl - 仅使用模板测试的遮挡查询
如果事先知道障碍物集严格位于相机和要测试的对象之间,如果我完全禁用深度测试,遮挡查询是否仍然有效?这是一种提高性能的尝试,因为从逻辑上讲,如果没有遮挡物位于被遮挡物后面,我不需要复杂的 z 测试。
我正在使用以下命令来初始化颜色/深度/模板缓冲区:
image-processing - 如何从人脸图像中去除遮挡?
有什么有效的去除人脸遮挡的方法?效果如下图:
有什么参考资料吗?
c++ - OpenGL - 遮挡查询深度缓冲区?
我刚刚开始研究 OpenGL 中的遮挡查询的主题,但我对它们的实际工作方式有点困惑。
在我发现的大多数示例中,深度和颜色蒙版在使用遮挡查询绘制之前被停用(因为我们实际上不需要“绘制”任何东西),本质上有点像这样:
(假设对象是从前到后绘制的,所以对象 1 在对象 2 的前面。上面的代码只是为了这个问题的伪代码。查询的结果将在以后检索。)
现在,要知道对象 2 是否实际上被对象 1 遮挡,它需要以某种方式保留来自查询 1 的片段信息(我假设在某种深度缓冲区中)。但是我们禁用了对深度和颜色缓冲区的绘制,这意味着什么都没有绘制,这意味着它不应该在任何地方存储任何东西?
是否有特殊的“查询”缓冲区?如果是这样,有没有办法访问它?它是否以任何方式连接到当前绑定的纹理或帧缓冲区?我需要清除它吗?我是否误解了遮挡查询的实际工作方式?
xna - 跨视口遮挡剔除
我目前正在做一个 XNA 项目,我需要创建一个画中画叠加来从多个角度显示 3D 场景。目前我正在尝试使用 2 个视口来执行此操作。主要的填满整个屏幕并按需要工作。第二个放置在第一个角的一个角中(与该角重叠),并且小于第一个大小的五分之一。除了视口的大小和位置之外,两者之间唯一真正的区别是它们的相机在场景中的位置。
只要第二个视口是第二个绘制的,并且在重叠的角落中没有靠近第一个视口的相机的物体,这实际上工作得更好。但是,如果有一个对象靠近相机并且在第一个视口的角落,对象似乎会因为第一个视口的对象而经历遮挡剔除。但是,第一个视口的遮挡对象并未显示在第二个视口空间中。
我的问题是如何防止“跨视口剔除”的发生?我已经搜索了所有内容,我可以找到的关闭线程建议将第二个视口绘制到 RenderTarget2D 并使用 SpriteBatch 显示生成的纹理。虽然这样做确实解决了遮挡问题,但它确实对 z 排序、CCW 剔除和我的水效果造成了混乱,所有这些我在使用默认渲染目标时从未遇到过问题。
opengl - 用于遮挡剔除的分层 Z 缓冲
我正在阅读Real-Time Rendering 3rd Edition中的 Occlusion Culling 部分,但我无法理解它是如何工作的。一些问题:
八叉树结构是否与用于一般截锥体剔除和渲染的八叉树结构相同?还是专门为遮挡剔除技术制作的八叉树?
一个更普遍的问题:在上一节(以及这里)中,遮挡查询术语被描述为“渲染对象的简化边界体积并将其深度结果与 Z 缓冲区进行比较,返回像素的数量可见的。” OpenGL 中的哪些函数与此遮挡查询概念相关联?
这种技术是开放世界游戏遮挡剔除的标准吗?
ios - MKMapView 遮挡是否剔除它的注释?
我试图在 MKMapView 上向用户显示数以千计的潜在引脚(注释)。有谁知道地图是否使用遮挡剔除来仅渲染可见注释?
这适用于使用 xCode 6.4 的 iOS 7+
three.js - 在threejs中是否默认启用了遮挡剔除
默认情况下在threejs中启用遮挡剔除还是在threejs中有任何设置可以启用它?