public void render(float deltaTime, TgcFrustum frustum) { sprite.Begin(SpriteFlags.AlphaBlend | SpriteFlags.SortDepthFrontToBack); var scaling = new TGCVector3((float)vp.Width / trustMe.Width, (float)vp.Height / trustMe.Height, 0); sprite.Transform = TGCMatrix.Scaling(scaling); sprite.Draw(trustMe.D3dTexture, Rectangle.Empty, Vector3.Empty, Vector3.Empty, Color.White); sprite.End(); inicio.Render(); }
///////////////////////////////////////////////////////////////////////// ////////////////////////////////RENDER/////////////////////////////////// ///////////////////////////////////////////////////////////////////////// public void render(float deltaTime, TgcFrustum frustum) { foreach (var mesh in objectsInFront) { if (!librosAgarrados.Contains(mesh)) { var resultadoColisionFrustum = TgcCollisionUtils.classifyFrustumAABB(frustum, mesh.BoundingBox); if (resultadoColisionFrustum != TgcCollisionUtils.FrustumResult.OUTSIDE) { mesh.Render(); } } } efectoOlas.SetValue("time", tiempoOlas); personajePrincipal.animateAndRender(deltaTime); HUD.Begin(SpriteFlags.AlphaBlend | SpriteFlags.SortDepthFrontToBack); posVidas = D3DDevice.Instance.Device.Viewport.Width - vida.Width; for (int i = 0; i < cantVidas; i++) { HUD.Transform = TGCMatrix.Translation(new TGCVector3(posVidas, 0, 0)); HUD.Draw(vida.D3dTexture, Rectangle.Empty, Vector3.Empty, Vector3.Empty, Color.OrangeRed); posVidas -= vida.Width; } librosAdquiridos.cambiarTexto(cantidadLibrosAdquiridos.ToString()); librosAdquiridos.cambiarTamañoLetra(28); librosAdquiridos.cambiarColor(Color.BlueViolet); librosAdquiridos.Render(); HUD.Draw2D(fisicaLib.D3dTexture, Rectangle.Empty, new SizeF(90, 90), new PointF(D3DDevice.Instance.Width - 95, D3DDevice.Instance.Height - 145), Color.White); HUD.End(); emisorDeParticulas1.render(deltaTime); emisorDeParticulas2.render(deltaTime); emisorDeParticulas3.render(deltaTime); }
///////////////////////////////////////////////////////////////////////// /// ////////////////////////////RENDER/////////////////////////////////// /// ///////////////////////////////////////////////////////////////////// public void render(float deltaTime, TgcFrustum frustum) { if (activarTeleport) { currentShaderSkeletalMesh = efectoTeleport; } else { currentShaderSkeletalMesh = TgcShaders.Instance.TgcSkeletalMeshShader; } foreach (var mesh in objectsInFront) { if (!coleccionablesAgarrados.Contains(mesh)) { // var resultadoColisionFrustum = TgcCollisionUtils.classifyFrustumAABB(frustum, mesh.BoundingBox); // if (resultadoColisionFrustum != TgcCollisionUtils.FrustumResult.OUTSIDE) mesh.Render(); } } efectoOlas.SetValue("time", tiempoOlas); personajePrincipal.Effect = currentShaderSkeletalMesh; if (activarTeleport) { efectoTeleport.SetValue("time", tiempoTeleport); personajePrincipal.Technique = "RenderScene"; } if (desactivarTeleport) { personajePrincipal.Technique = TgcShaders.Instance.getTgcSkeletalMeshTechnique(personajePrincipal.RenderType); efectoTeleport.SetValue("time", 0); desactivarTeleport = false; } personajePrincipal.animateAndRender(deltaTime); HUD.Begin(SpriteFlags.AlphaBlend | SpriteFlags.SortDepthFrontToBack); posVidas = D3DDevice.Instance.Device.Viewport.Width - vida.Width; for (int i = 0; i < vidasRestantes; i++) { HUD.Transform = TGCMatrix.Translation(new TGCVector3(posVidas, 0, 0)); HUD.Draw(vida.D3dTexture, Rectangle.Empty, Vector3.Empty, Vector3.Empty, Color.OrangeRed); posVidas -= vida.Width; } scene.Meshes[295].BoundingBox.Render(); scene.Meshes[296].BoundingBox.Render(); scene.Meshes[305].BoundingBox.Render(); coleccionablesAdquiridos.cambiarTexto(cantidadColeccionablesAgarrados.ToString()); coleccionablesAdquiridos.Render(); coleccionablesAdquiridos.cambiarTamañoLetra(28); coleccionablesAdquiridos.cambiarColor(Color.BlueViolet); HUD.Draw2D(mumuki.D3dTexture, Rectangle.Empty, new SizeF(100, 100), new PointF(D3DDevice.Instance.Width - 100, D3DDevice.Instance.Height - 150), Color.White); HUD.End(); }