84 bool requestRedraw =
false;
105 if( aStatusReporter )
106 aStatusReporter->
Report(
_(
"Loading..." ) );
109 requestRedraw =
true;
110 Reload( aStatusReporter, aWarningReporter,
false );
119 requestRedraw =
true;
125 glClearColor( 0.0f, 0.0f, 0.0f, 0.0f );
126 glClearDepth( 1.0f );
127 glClearStencil( 0x00 );
128 glClear( GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT );
131 glPixelStorei( GL_UNPACK_ALIGNMENT, 4 );
133 glDisable( GL_STENCIL_TEST );
134 glDisable( GL_LIGHTING );
135 glDisable( GL_COLOR_MATERIAL );
136 glDisable( GL_DEPTH_TEST );
137 glDisable( GL_TEXTURE_2D );
138 glDisable( GL_BLEND );
139 glDisable( GL_MULTISAMPLE );
141 const bool was_camera_changed =
m_camera.ParametersChanged();
143 if( requestRedraw || aIsMoving || was_camera_changed )
148 if( aIsMoving || was_camera_changed )
158 glBindBuffer( GL_PIXEL_UNPACK_BUFFER,
m_pboId );
161 uint8_t* ptrPBO = (uint8_t *)glMapBuffer( GL_PIXEL_UNPACK_BUFFER, GL_WRITE_ONLY );
168 glUnmapBuffer( GL_PIXEL_UNPACK_BUFFER );
176 glBindBuffer( GL_PIXEL_UNPACK_BUFFER,
m_pboId );
181 uint8_t* ptrPBO = (uint8_t *)glMapBuffer( GL_PIXEL_UNPACK_BUFFER, GL_WRITE_ONLY );
185 render( ptrPBO, aStatusReporter );
188 requestRedraw =
true;
191 glUnmapBuffer( GL_PIXEL_UNPACK_BUFFER );
197 glClear( GL_COLOR_BUFFER_BIT );
205 glEnable( GL_BLEND );
206 glBlendFunc( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA );
207 glEnable( GL_ALPHA_TEST );
209 glBindBuffer( GL_PIXEL_UNPACK_BUFFER, 0 );
211 return requestRedraw;