public void mover(LightData luz, TgcMesh meshLuz, float elapsedTime) { Matrix directionRotationMatrix = Matrix.RotationX(FastMath.QUARTER_PI * elapsedTime); luz.direccion.TransformCoordinate(directionRotationMatrix); Matrix trans = Matrix.Translation(meshLuz.Position); Matrix trasp = Matrix.Invert(trans); meshLuz.Transform = Matrix.Multiply(trasp, directionRotationMatrix) * trans * meshLuz.Transform; meshLuz.render(); }
public virtual void renderizar() { if (tieneVida()) { if (visible) { mesh.render(); canion.render(); } barraDeVida.render(); } else { EjemploAlumno.Instance.estado = EstadoDelJuego.Perdido; } }
public void mover(LightData luz, TgcMesh meshLuz, float elapsedTime) { meshLuz.render(); }
public void activar(float elapsedTime,TgcText2d textGanaste, TgcText2d textGanaste2,TgcText2d textoContadorTiempo,TgcText2d textoMejorTiempo,TgcMesh piramid, TgcSkyBox skyBox, bool terminoJuego,TgcSprite tablero,TgcText2d textFPS) { Device device = GuiController.Instance.D3dDevice; Control panel3d = GuiController.Instance.Panel3d; float aspectRatio = (float)panel3d.Width / (float)panel3d.Height; time += elapsedTime; // animo la pos del avion if (!terminoJuego) { g_LightPos = motorcycle.Position + 2f*(new Vector3(100, 60, 0)); g_LightDir = motorcycle.Position + (new Vector3(0, 0, 0)) - g_LightPos; g_LightDir.Normalize(); } // Shadow maps: device.EndScene(); // termino el thread anterior GuiController.Instance.RotCamera.CameraCenter = new Vector3(0, 0, 0); GuiController.Instance.RotCamera.CameraDistance = 100; GuiController.Instance.RotCamera.RotationSpeed = 2f; GuiController.Instance.CurrentCamera.updateCamera(); device.Clear(ClearFlags.Target | ClearFlags.ZBuffer, Color.Black, 1.0f, 0); //Genero el shadow map RenderShadowMap(); device.BeginScene(); // dibujo la escena pp dicha device.Clear(ClearFlags.Target | ClearFlags.ZBuffer, Color.Black, 1.0f, 0); RenderScene(false); if (terminoJuego) { textGanaste.render(); textGanaste2.render(); } GuiController.Instance.Drawer2D.beginDrawSprite(); //Dibujar sprite (si hubiese mas, deberian ir todos aquí) tablero.render(); //Finalizar el dibujado de Sprites GuiController.Instance.Drawer2D.endDrawSprite(); textFPS.Text = " FPS: " + HighResolutionTimer.Instance.FramesPerSecond.ToString(); textFPS.render(); textoContadorTiempo.render(); textoMejorTiempo.render(); piramid.render(); renderEscena(elapsedTime); device.Transform.Projection = Matrix.PerspectiveFovLH(Geometry.DegreeToRadian(45.0f), TgcD3dDevice.aspectRatio, 1f, 20000f); skyBox.render(); }