/// <summary> /// main render method /// </summary> public override void Render() { BorrarPantalla(); if (showMenu) { //TODO -> mostrar menu inicial return; } if (!FinishedLoading) { return; } crono.render(ElapsedTime); preRenderPointLight(); //render 1 //preRenderNiebla(); //render2, rompe con la luz por eso esta comentado IniciarScene(); //empiezo main escena //cilindroBB.render(); //PreRenderPersonalizado(); //para el shadowMapFIX if (GodModeOn) { DibujarDebug(); } var posCamara = AutoJugador.CamaraAuto.Position; //foreach (Auto a in Autos) //{ // foreach (LuzFija luz in LucesLst) // { // luz.setValues(a.Mesh, posCamara); // } // a.Render(); //} foreach (TgcMesh mesh in MapScene.Meshes) { //rendereo solo lo que esta dentro del frustrum var c = TgcCollisionUtils.classifyFrustumAABB(Frustum, mesh.BoundingBox); if (c != TgcCollisionUtils.FrustumResult.OUTSIDE) { mesh.render(); } } DrawText.drawText(AutoJugador.Velocidad.ToString(), 20, 50, Color.Orange); //skybox render //render de menubox solo cuando es necesario. if (GodModeOn == true && MenuBox != null) { MenuBox.Render(); } //Dibujo los sprites2d en pantalla Velocimetro.Render(); autoOponente.render(); SkyBox.render(); RenderAxis(); RenderFPS(); AutoJugador.Render(); TerminarScene(); //termino main scene ImprimirPantalla(); }