diff options
Diffstat (limited to 'src/Runtime/Source/Qt3DSRuntimeRender/RendererImpl')
-rw-r--r-- | src/Runtime/Source/Qt3DSRuntimeRender/RendererImpl/Qt3DSRendererImpl.cpp | 3 | ||||
-rw-r--r-- | src/Runtime/Source/Qt3DSRuntimeRender/RendererImpl/Qt3DSRendererImplLayerRenderData.cpp | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/Runtime/Source/Qt3DSRuntimeRender/RendererImpl/Qt3DSRendererImpl.cpp b/src/Runtime/Source/Qt3DSRuntimeRender/RendererImpl/Qt3DSRendererImpl.cpp index 94fe815d..d6fb3b1b 100644 --- a/src/Runtime/Source/Qt3DSRuntimeRender/RendererImpl/Qt3DSRendererImpl.cpp +++ b/src/Runtime/Source/Qt3DSRuntimeRender/RendererImpl/Qt3DSRendererImpl.cpp @@ -1649,11 +1649,12 @@ namespace render { QT3DSF32 R2 = pLayer->m_AoDistance * pLayer->m_AoDistance * 0.16f; QT3DSF32 rw = 100, rh = 100; - QT3DSF32 fov = (pCamera) ? pCamera->m_FOV : 1.0f; + if (inDepthTexture && inDepthTexture.GetTexture()) { rw = (QT3DSF32)inDepthTexture.GetTexture()->GetTextureDetails().m_Width; rh = (QT3DSF32)inDepthTexture.GetTexture()->GetTextureDetails().m_Height; } + QT3DSF32 fov = (pCamera) ? pCamera->verticalFov(rw / rh) : 1.0f; QT3DSF32 tanHalfFovY = tanf(0.5f * fov * (rh / rw)); QT3DSF32 invFocalLenX = tanHalfFovY * (rw / rh); diff --git a/src/Runtime/Source/Qt3DSRuntimeRender/RendererImpl/Qt3DSRendererImplLayerRenderData.cpp b/src/Runtime/Source/Qt3DSRuntimeRender/RendererImpl/Qt3DSRendererImplLayerRenderData.cpp index 51bff7f4..15070b64 100644 --- a/src/Runtime/Source/Qt3DSRuntimeRender/RendererImpl/Qt3DSRendererImplLayerRenderData.cpp +++ b/src/Runtime/Source/Qt3DSRuntimeRender/RendererImpl/Qt3DSRendererImplLayerRenderData.cpp @@ -316,7 +316,7 @@ namespace render { QT3DSVec3 camY(dataPtr[4], dataPtr[5], dataPtr[6]); QT3DSVec3 camZ(dataPtr[8], dataPtr[9], dataPtr[10]); - float tanFOV = tanf(inCamera.m_FOV * 0.5f); + float tanFOV = tanf(inCamera.verticalFov(inViewPort) * 0.5f); float asTanFOV = tanFOV * inViewPort.m_Width / inViewPort.m_Height; camEdges[0] = -asTanFOV * camX + tanFOV * camY + camZ; camEdges[1] = asTanFOV * camX + tanFOV * camY + camZ; |