Moved internal view state into single struct.

This commit is contained in:
Branimir Karadžić
2017-10-30 08:39:25 -07:00
parent 8eced7c113
commit 85322904a9
8 changed files with 182 additions and 131 deletions

View File

@@ -5652,7 +5652,7 @@ BX_PRAGMA_DIAGNOSTIC_POP();
bool viewRestart = false;
uint8_t eye = 0;
uint8_t restartState = 0;
viewState.m_rect = _render->m_rect[0];
viewState.m_rect = _render->m_view[0].m_rect;
int32_t numItems = _render->m_numRenderItems;
for (int32_t item = 0, restartItem = numItems; item < numItems || restartItem < numItems;)
@@ -5685,13 +5685,13 @@ BX_PRAGMA_DIAGNOSTIC_POP();
view = key.m_view;
programIdx = kInvalidHandle;
if (_render->m_fb[view].idx != fbh.idx)
if (_render->m_view[view].m_fbh.idx != fbh.idx)
{
fbh = _render->m_fb[view];
fbh = _render->m_view[view].m_fbh;
setFrameBuffer(fbh);
}
viewRestart = ( (BGFX_VIEW_STEREO == (_render->m_viewFlags[view] & BGFX_VIEW_STEREO) ) );
viewRestart = ( (BGFX_VIEW_STEREO == (_render->m_view[view].m_flags & BGFX_VIEW_STEREO) ) );
viewRestart &= hmdEnabled;
if (viewRestart)
{
@@ -5717,7 +5717,7 @@ BX_PRAGMA_DIAGNOSTIC_POP();
profiler.begin(view);
viewState.m_rect = _render->m_rect[view];
viewState.m_rect = _render->m_view[view].m_rect;
if (viewRestart)
{
if (BX_ENABLED(BGFX_CONFIG_DEBUG_PIX) )
@@ -5753,7 +5753,7 @@ BX_PRAGMA_DIAGNOSTIC_POP();
}
}
const Rect& scissorRect = _render->m_scissor[view];
const Rect& scissorRect = _render->m_view[view].m_scissor;
viewHasScissor = !scissorRect.isZero();
viewScissorRect = viewHasScissor ? scissorRect : viewState.m_rect;
@@ -5765,7 +5765,7 @@ BX_PRAGMA_DIAGNOSTIC_POP();
vp.MinDepth = 0.0f;
vp.MaxDepth = 1.0f;
deviceCtx->RSSetViewports(1, &vp);
Clear& clr = _render->m_clear[view];
Clear& clr = _render->m_view[view].m_clear;
if (BGFX_CLEAR_NONE != (clr.m_flags & BGFX_CLEAR_MASK) )
{