void CTeamBaseZone::OnRender() { if(!bDebug) return; if (!(dbg_net_Draw_Flags.is_any((1<<3)))) return; // RCache.OnFrameEnd(); Fvector l_half; l_half.set(.5f, .5f, .5f); Fmatrix l_ball, l_box; xr_vector<CCF_Shape::shape_def> &l_shapes = ((CCF_Shape*)CFORM())->Shapes(); xr_vector<CCF_Shape::shape_def>::iterator l_pShape; for(l_pShape = l_shapes.begin(); l_shapes.end() != l_pShape; ++l_pShape) { switch(l_pShape->type) { case 0: { Fsphere &l_sphere = l_pShape->data.sphere; l_ball.scale(l_sphere.R, l_sphere.R, l_sphere.R); Fvector l_p; XFORM().transform(l_p, l_sphere.P); l_ball.translate_add(l_p); Level().debug_renderer().draw_ellipse(l_ball, D3DCOLOR_XRGB(0,255,255)); } break; case 1: { l_box.mul(XFORM(), l_pShape->data.box); Level().debug_renderer().draw_obb(l_box, l_half, D3DCOLOR_XRGB(0,255,255)); } break; } } }
void CActor::OnRender () { if (!bDebug) return; if ((dbg_net_Draw_Flags.is_any((1<<5)))) character_physics_support()->movement()->dbg_Draw (); OnRender_Network(); inherited::OnRender(); }
void CActor::OnRender () { #ifdef DEBUG if (inventory().ActiveItem()) inventory().ActiveItem()->OnRender(); #endif if (!bDebug) return; if ((dbg_net_Draw_Flags.is_any(dbg_draw_actor_phys))) character_physics_support()->movement()->dbg_Draw (); OnRender_Network(); inherited::OnRender(); }
void CStats::OnRender () { #ifdef DEBUG if (g_stats_flags.is(st_sound)){ CSound_stats_ext snd_stat_ext; ::Sound->statistic (0,&snd_stat_ext); CSound_stats_ext::item_vec_it _I = snd_stat_ext.items.begin(); CSound_stats_ext::item_vec_it _E = snd_stat_ext.items.end(); for (;_I!=_E;_I++){ const CSound_stats_ext::SItem& item = *_I; if (item._3D) { m_pRender->SetDrawParams(&*Device.m_pRender); //RCache.set_xform_world(Fidentity); //RCache.set_Shader (Device.m_SelectionShader); //RCache.set_c ("tfactor",1,1,1,1); DU->DrawCross (item.params.position, 0.5f, 0xFF0000FF, true ); if (g_stats_flags.is(st_sound_min_dist)) DU->DrawSphere (Fidentity, item.params.position, item.params.min_distance, 0x400000FF, 0xFF0000FF, true, true); if (g_stats_flags.is(st_sound_max_dist)) DU->DrawSphere (Fidentity, item.params.position, item.params.max_distance, 0x4000FF00, 0xFF008000, true, true); xr_string out_txt = (out_txt.size() && g_stats_flags.is(st_sound_info_name)) ? item.name.c_str():""; if (item.game_object) { if (g_stats_flags.is(st_sound_ai_dist)) DU->DrawSphere (Fidentity, item.params.position, item.params.max_ai_distance, 0x80FF0000,0xFF800000,true,true); if (g_stats_flags.is(st_sound_info_object)){ out_txt += " ("; out_txt += item.game_object->cNameSect().c_str(); out_txt += ")"; } } if (g_stats_flags.is_any(st_sound_info_name|st_sound_info_object) && item.name.size()) DU->OutText (item.params.position, out_txt.c_str(),0xFFFFFFFF,0xFF000000); } } } #endif }
void CInventoryItem::OnRender() { if (bDebug && object().Visual()) { if (!(dbg_net_Draw_Flags.is_any((1<<4)))) return; Fvector bc,bd; object().Visual()->vis.box.get_CD (bc,bd); Fmatrix M = object().XFORM(); M.c.add (bc); Level().debug_renderer().draw_obb (M,bd,color_rgba(0,0,255,255)); /* u32 Color; if (processing_enabled()) { if (m_bInInterpolation) Color = color_rgba(0,255,255, 255); else Color = color_rgba(0,255,0, 255); } else { if (m_bInInterpolation) Color = color_rgba(255,0,255, 255); else Color = color_rgba(255, 0, 0, 255); }; // Level().debug_renderer().draw_obb (M,bd,Color); float size = 0.01f; if (!H_Parent()) { Level().debug_renderer().draw_aabb (Position(), size, size, size, color_rgba(0, 255, 0, 255)); Fvector Pos1, Pos2; VIS_POSITION_it It = LastVisPos.begin(); Pos1 = *It; for (; It != LastVisPos.end(); It++) { Pos2 = *It; Level().debug_renderer().draw_line(Fidentity, Pos1, Pos2, color_rgba(255, 255, 0, 255)); Pos1 = Pos2; }; } //--------------------------------------------------------- if (OnClient() && !H_Parent() && m_bInInterpolation) { Fmatrix xformI; xformI.rotation(IRecRot); xformI.c.set(IRecPos); Level().debug_renderer().draw_aabb (IRecPos, size, size, size, color_rgba(255, 0, 255, 255)); xformI.rotation(IEndRot); xformI.c.set(IEndPos); Level().debug_renderer().draw_obb (xformI,bd,color_rgba(0, 255, 0, 255)); /////////////////////////////////////////////////////////////////////////// Fvector point0 = IStartPos, point1; float c = 0; for (float i=0.1f; i<1.1f; i+= 0.1f) { c = i;// * 0.1f; for (u32 k=0; k<3; k++) { point1[k] = c*(c*(c*SCoeff[k][0]+SCoeff[k][1])+SCoeff[k][2])+SCoeff[k][3]; }; Level().debug_renderer().draw_line(Fidentity, point0, point1, color_rgba(0, 0, 255, 255)); point0.set(point1); }; }; */ }; }