Exemplo n.º 1
0
        /// <summary>
        /// rendereo.
        /// </summary>
        public void Render()
        {
            AplicarShader(); //para que cambie de color al meter nitro
            directionArrow.render();
            Mesh.render();
            RuedasDelanteras.Render();
            RuedasTraseras.Render();
            //RuedaMainMesh.render();

            /*if (RenderLuces)
             *  Luces.Update();*/
            if (motionBlur != null && finishedLoading)
            {
                motionBlur.Render();
            }


            if (tInicioHumo < tFinHumo)
            {
                humoChoque.Render(false); //si es momento de choque, muestro humito
            }
            tInicioHumo = tInicioHumo + GameModel.ElapsedTime;
            //escenario.BoundingBox.render();

            //if (pintarObb)
            //    obb.render();

            //foreach (var mesh in ciudadScene.Meshes)
            //{
            //   //mesh.BoundingBox.render();
            //}
            humoEscape.Render(nitroActivado);
        }
Exemplo n.º 2
0
        private void MoverMesh()
        {
            newPosicion = new Vector3(Mesh.Position.X + calcularDX(), calcularDY(), Mesh.Position.Z + calcularDZ());

            //4- las ruedas
            //RuedasDelanteras.Update(Mesh.Position, Velocidad, DireccionRuedas);
            //RuedasTraseras.Update(Mesh.Position, Velocidad, DireccionRuedas);

            //??
            obb.Center = new Vector3(Mesh.Position.X + calcularDX(), obbPosY + 0 + calcularDY(), Mesh.Position.Z + calcularDZ());

            //6 - me muevo
            var m = Matrix.Scaling(scale3) * matrixRotacion *
                    Matrix.Translation(newPosicion);

            Mesh.Transform = m; //Mesh.BoundingBox.transform(m);

            //RuedasDelanteras.Update3(Mesh.Position, matrixRotacion, angOrientacionMesh, Velocidad);
            //RuedasTraseras.Update3(Mesh.Position, matrixRotacion, angOrientacionMesh, Velocidad);
            var auxDireccion = DireccionRuedas;

            if (!volanteo)
            {
                auxDireccion = 0;
            }
            RuedasDelanteras.Update4(m, Velocidad, -auxDireccion);
            RuedasTraseras.Update4(m, Velocidad, 0);

            Mesh.Position = newPosicion;
            humoEscape.Update(newPosicion, anguloFinal);


            //actualizo la posicion de la camara respecto de la del mesh
            CamaraAuto.Target = Mesh.Position;



            //7 ---- colisiones---
            ProcesarColisiones();
            ClippingFix();
        }