bool renderer::render(const crowd & people, const platform::tstring & text) { if (!pre_render()) { return false; } D3DXMATRIX skel_transform; ::D3DXMatrixScaling(&skel_transform, 0.5, 0.5, 0.5); for (crowd::size_type i = 0; i < people.size(); ++i) { skeleton s = people.person(i); draw_skeleton(*s.bind_pose(), *s.structure(), visuals, skel_transform); } if (scene_visual->reflective()) { pipeline.culling(D3DCULL_CCW); D3DXMATRIX invert_transform; ::D3DXMatrixScaling(&invert_transform, 1.0f, -1.0f, 1.0f); D3DXMATRIX reflection_transform; ::D3DXMatrixMultiply(&reflection_transform, &skel_transform, &invert_transform); for (crowd::size_type i = 0; i < people.size(); ++i) { skeleton s = people.person(i); draw_skeleton(*s.bind_pose(), *s.structure(), visuals, reflection_transform); } pipeline.culling(); } return post_render(text); }
void meter_paint(t_meter *x, t_object *view) { t_rect rect; jbox_get_rect_for_view((t_object *)x, view, &rect); x->f_rect = rect; x->f_center = rect.width * .5; x->f_center = rect.height * .5; x->f_rayonMax = rect.width * .5; if(rect.width > rect.height) x->f_rayonMax = rect.height * .5; x->f_fontsize = (x->f_rayonMax / 14.) - 1.; x->f_rayonCircle = x->f_rayonMax / 32; x->f_rayonExt = x->f_rayonMax - (1*0.5) - 2; x->f_rayonInt = x->f_rayonExt*(1 - x->f_metersize); draw_skeleton(x, view, &rect); draw_leds(x, view, &rect); if (x->f_drawmborder == 2 || x->f_drawmborder == 3) draw_separator(x, view, &rect); if (x->f_drawvector == 2 || x->f_drawvector == 3) draw_vector_velocity(x, view, &rect); if (x->f_drawvector == 1 || x->f_drawvector == 3) draw_vector_energy(x, view, &rect); }
void meter_paint(t_meter *x, t_object *view) { t_rect rect; jbox_get_rect_for_view((t_object *)x, view, &rect); x->f_center = rect.width * 0.5; x->f_rayonMax = x->f_center; x->f_fontsize = (x->f_rayonMax / 14.) - 1.; x->f_rayonCircle = x->f_rayonMax / 32; x->f_rayonExt = x->f_rayonMax - 2.5; x->f_rayonInt = x->f_rayonExt * (1 - x->f_metersize); draw_skeleton(x, view, &rect); draw_leds(x, view, &rect); if (x->f_drawmborder == 2 || x->f_drawmborder == 3) draw_separator(x, view, &rect); if (x->f_drawvector != VECTOR_NONE) draw_vectors(x, view, &rect); }