in roboschool/cpp-household/render-glwidget.cpp [277:318]
void Viz::_render_on_correctly_set_up_context()
{
if (resized) {
resized = false;
float near = 0.1;
float far = 100.0;
float hfov = 90;
render_viewport.reset(new SimpleRender::ContextViewport(cx, win_w, win_h, near, far, hfov));
render_viewport_resized = true;
caption.render(0x880000, win_w);
}
if (!render_viewport) return;
QElapsedTimer elapsed;
elapsed.start();
if (dup_transparent_mode!=2) {
uint32_t opt = view_options;
bool hurray = QOpenGLContext::areSharing(
cx->glcx,
context()
);
assert(hurray);
render_viewport->paint(user_x, user_y, user_z, wheel, zrot, yrot, 0, floor_visible, opt, ruler_size);
CHECK_GL_ERROR;
ms_render_objectcount = render_viewport->visible_object_count;
}
double ms_objects = elapsed.nsecsElapsed() / 1000000.0;
elapsed.start();
_paint_hud();
CHECK_GL_ERROR;
double ms_billboards = elapsed.nsecsElapsed() / 1000000.0;
//if (dup_transparent_mode>0) {
//cx->pure_color_opacity = dup_opacity;
//render_viewport->paint(user_x, user_y, user_z, wheel, zrot, yrot, 0, floor_visible, view_options | VIEW_COLLISION_SHAPE, ruler_size);
//cx->pure_color_opacity = 1;
//}
ms_render *= 0.9;
ms_render += 0.1*(ms_objects + ms_billboards);
}