shadow-mapping

    3热度

    1回答

    我编写了一个管理射灯影子映射的3D应用程序。要做到这一点,我使用经典的阴影贴图技术(我在第一个渲染过程中填充深度纹理,在第二个渲染过程中,我比较从光线到第一个遮挡物的距离以及从光线到顶点位置的距离,以了解我的片段是否在阴影中)。 这里的一个屏幕截图(点光/ 2D深度纹理阴影映射): 在这个例子中我使用使用函数“textureProjOffset” PCF阴影映射技术。下面是我的片段着色器的一段代码

    1热度

    1回答

    由于我使用的纹理颜色暗淡(这些工件不可见),我有一种奇怪的行为与我之前从未见过的硬阴影。这里是我的问题的一些截图与3米不同的阴影贴图的分辨率: 1)阴影贴图160 * 120 正如你所看到的,有立方体的表面上的一种牙齿。 这里的场景的从光位置的视图: 这里的阴影贴图: 2)阴影贴图640 * 480 由于阴影贴图带来更高的精度,因此具有更高的分辨率时,工件更不明显。 这里的场景从光的位置来看: 这

    1热度

    1回答

    我正在关注this paper以便在我的引擎中实现PCSS。 虽然我有一个小问题。我的引擎只允许全指向灯 - 我稍后再添加,但这不是问题。所以,首先,我实施了硬阴影映射。这是一场胜利。 我决定通过PCSS将我的硬阴影变成软阴影。作为一个细心的人,我决定先在PCF做第一枪,让我的脚湿润。这是一个失败。 在2D纹理,它非常直截了当。我只是使用一个简单的内核从光照深度图中抽取几个值,然后用一个box/p

    4热度

    1回答

    请参阅编辑因为问题的第一部分已解决。 我想用我自己的框架从http://learnopengl.com/#!Advanced-Lighting/Shadows/Shadow-Mapping复制阴影映射演示,但有趣的是我没有得到任何阴影。第一个重要的问题是我的深度图不正确。我已经调试并且双重检查了每一行,但没有成功。也许另一双眼睛会有更多的成功。 见(左上,第5行 - 图像完全是白色): 我会写第二

    0热度

    1回答

    我正在使用JOGL将OpenGL SuperBible演示转换为Java。直到第12章的所有演示都进行得很顺利,但现在我被困在了阴影映射中。这是我的设置: public class ShadowMap implements GLEventListener { public static void main(String[] args) { ShadowMap re

    0热度

    2回答

    我在GeForce GTX 750下使用OpenGL 4.3创建Shadow Map。现在基本效果如下图所示,似乎是正确的: 要擦除块效应,我试着在着色器中手动执行2×2 PCF。它导致以下结果,这似乎也是正确的: 对于加速,我想使用图形卡提供的好处,它提供了一次获取比较结果的线性过滤器。但效果与上述不同。 它更像是OpenGL的过滤阴影的渲染线,但在阴影贴图没有过滤器: 下面是我如何做硬件PCF

    0热度

    1回答

    我目前正在为我的game engine制作阴影贴图实现,它似乎很好地渲染和投射阴影贴图,但是如果阴影距发射器太近,它似乎会被切割,如下图所示: (白线在那里检查阴影是否在正确的位置,它们是从点光源到立方体顶点的投影)。 正如你所看到的那样,阴影被切割,因为它应该从立方体的边缘开始。 我使用从视光点呈现与立体矩阵256 * 256 depth16阴影图:NzMatrix4f::Perspective

    6热度

    1回答

    我一直在阅读了关于阴影映射,发现下面的教程: http://www.opengl-tutorial.org/intermediate-tutorials/tutorial-16-shadow-mapping/ 这对我来说很有意义,直到在这里笔者开始讨论“影子痘痘”神器点。他们用下图解释了原因(无字): 我仍然很难理解究竟会导致阴影痤疮以及为什么添加偏见修复它。 阴影图的分辨率似乎对痤疮没有影响。之

    2热度

    1回答

    我无法在我的应用程序中获得阴影映射。我尝试渲染一辆四轮摩托车,并在它下面的地板上观察它的影子。 这是我的一些代码。 纹理制作: // Create a depth texture glGenTextures(1, &depth_texture); glBindTexture(GL_TEXTURE_2D, depth_texture); // Allocate stor

    1热度

    2回答

    我想用Qt的OpenGL类渲染一个场景(在下面显示的平台上骑自行车)。 Screenshot of bike model without shadows 我意识到我们需要做两遍这一点。 用于从所述光的角度和 渲染深度图的第二,用于从摄像机视点呈现场景,其中 片段着色器使用深度图作为纹理用于确定是否 第一遍碎片在阴影内或不在。 用于捕获深度图,我渲染从光的 来看场景到帧缓冲如使用 m_shader-