mirror of
https://github.com/scratchfoundation/bgfx.git
synced 2025-02-17 20:31:57 -05:00
Merge pull request #420 from mendsley/vr_eye_bleeding
VR: Add buffer between left/right eye textures
This commit is contained in:
commit
66ad074f90
1 changed files with 9 additions and 3 deletions
12
src/ovr.cpp
12
src/ovr.cpp
|
@ -9,6 +9,12 @@
|
|||
|
||||
namespace bgfx
|
||||
{
|
||||
#if OVR_VERSION <= OVR_VERSION_050
|
||||
static const int s_eyeBuffer = 100;
|
||||
#else
|
||||
static const int s_eyeBuffer = 8;
|
||||
#endif // OVR_VERSION...
|
||||
|
||||
OVR::OVR()
|
||||
: m_hmd(NULL)
|
||||
, m_isenabled(false)
|
||||
|
@ -50,7 +56,7 @@ namespace bgfx
|
|||
|
||||
ovrSizei sizeL = ovrHmd_GetFovTextureSize(m_hmd, ovrEye_Left, m_hmd->DefaultEyeFov[0], 1.0f);
|
||||
ovrSizei sizeR = ovrHmd_GetFovTextureSize(m_hmd, ovrEye_Right, m_hmd->DefaultEyeFov[1], 1.0f);
|
||||
m_rtSize.w = sizeL.w + sizeR.w;
|
||||
m_rtSize.w = sizeL.w + sizeR.w + s_eyeBuffer;
|
||||
m_rtSize.h = bx::uint32_max(sizeL.h, sizeR.h);
|
||||
m_warning = true;
|
||||
}
|
||||
|
@ -169,12 +175,12 @@ ovrError:
|
|||
ovrRecti rect;
|
||||
rect.Pos.x = 0;
|
||||
rect.Pos.y = 0;
|
||||
rect.Size.w = m_rtSize.w/2;
|
||||
rect.Size.w = (m_rtSize.w - s_eyeBuffer)/2;
|
||||
rect.Size.h = m_rtSize.h;
|
||||
|
||||
m_texture[0].Header.RenderViewport = rect;
|
||||
|
||||
rect.Pos.x += rect.Size.w;
|
||||
rect.Pos.x += rect.Size.w + s_eyeBuffer;
|
||||
m_texture[1].Header.RenderViewport = rect;
|
||||
|
||||
m_timing = ovrHmd_BeginFrame(m_hmd, 0);
|
||||
|
|
Loading…
Reference in a new issue