/* ==================== BeginFrame ==================== */ void idRenderSystemLocal::BeginFrame( int renderWidth, int renderHeight ) { if ( !glConfig.isInitialized ) { return; } globalImages->Update(); guiModel->Clear(); glConfig.vidWidth = renderWidth; glConfig.vidHeight = renderHeight; renderCrops[0].x = 0; renderCrops[0].y = 0; renderCrops[0].width = renderWidth * r_framebufferScale.GetFloat(); renderCrops[0].height = renderHeight * r_framebufferScale.GetFloat(); currentRenderCrop = 0; // screenFraction is just for quickly testing fill rate limitations if ( r_screenFraction.GetInteger() != 100 ) { int w = SCREEN_WIDTH * r_screenFraction.GetInteger() / 100.0f; int h = SCREEN_HEIGHT * r_screenFraction.GetInteger() / 100.0f; CropRenderSize( w, h ); } backEnd.glslReplaceArb2 = r_glslReplaceArb2.GetBool(); // this is the ONLY place this is modified frameCount++; // just in case we did a common->Error while this // was set guiRecursionLevel = 0; // the first rendering will be used for commands like // screenshot, rather than a possible subsequent remote // or mirror render // primaryWorld = NULL; // set the time for shader effects in 2D rendering frameShaderTime = eventLoop->Milliseconds() * 0.001; // // draw buffer stuff // auto cmd = R_GetCommandBuffer<setBufferCommand_t>(); cmd->commandId = RC_SET_BUFFER; cmd->frameCount = frameCount; }
/* ==================== BeginFrame ==================== */ void idRenderSystemLocal::BeginFrame( int windowWidth, int windowHeight ) { setBufferCommand_t *cmd; if ( !glConfig.isInitialized ) { return; } // determine which back end we will use SetBackEndRenderer(); guiModel->Clear(); // for the larger-than-window tiled rendering screenshots if ( tiledViewport[0] ) { windowWidth = tiledViewport[0]; windowHeight = tiledViewport[1]; } glConfig.vidWidth = windowWidth; glConfig.vidHeight = windowHeight; renderCrops[0].x = 0; renderCrops[0].y = 0; renderCrops[0].width = windowWidth; renderCrops[0].height = windowHeight; currentRenderCrop = 0; // screenFraction is just for quickly testing fill rate limitations if ( r_screenFraction.GetInteger() != 100 ) { int w = SCREEN_WIDTH * r_screenFraction.GetInteger() / 100.0f; int h = SCREEN_HEIGHT * r_screenFraction.GetInteger() / 100.0f; CropRenderSize( w, h ); } // this is the ONLY place this is modified frameCount++; // just in case we did a common->Error while this // was set guiRecursionLevel = 0; // the first rendering will be used for commands like // screenshot, rather than a possible subsequent remote // or mirror render // primaryWorld = NULL; // set the time for shader effects in 2D rendering frameShaderTime = eventLoop->Milliseconds() * 0.001; // // draw buffer stuff // cmd = (setBufferCommand_t *)R_GetCommandBuffer( sizeof( *cmd ) ); cmd->commandId = RC_SET_BUFFER; cmd->frameCount = frameCount; if ( r_frontBuffer.GetBool() ) { cmd->buffer = (int)GL_FRONT; } else { cmd->buffer = (int)GL_BACK; } }