Exemple #1
0
        /// <summary>
        ///     Se llama una sola vez, al principio cuando se ejecuta el ejemplo.
        ///     Escribir aquí todo el código de inicialización: cargar modelos, texturas, estructuras de optimización, todo
        ///     procesamiento que podemos pre calcular para nuestro juego.
        ///     Borrar el codigo ejemplo no utilizado.
        /// </summary>
        public override void Init()
        {
            //Device de DirectX para crear primitivas.
            var d3dDevice = D3DDevice.Instance.Device;

            escenario.InstanciarEstructuras();
            escenario.InstanciarHeightmap();
            escenario.InstanciarSkyBox();
            monster.InstanciarMonster();
            CrearObjetosEnEscenario();

            /*
             * var cameraPosition = new TGCVector3(-2500, 0, -15000);
             * var lookAt = new TGCVector3(0, 0, 0);
             * Camara.SetCamera(cameraPosition, lookAt);
             */

            //ESTA ORIGINALMENTE FUNCIONA
            // MiCamara camaraInterna = new MiCamara(personaje.PosicionMesh(), 220, 300);
            //Camara = camaraInterna;

            //ESTE VA QUERIENDO
            Camara = personaje;
            //Camara.SetCamera(personaje.PosicionMesh(), new TGCVector3(0, 0, 0));


            //Internamente el framework construye la matriz de view con estos dos vectores.
            //Luego en nuestro juego tendremos que crear una cámara que cambie la matriz de view con variables como movimientos o animaciones de escenas
        }
Exemple #2
0
        public override void Init()
        {
            var d3dDevice = D3DDevice.Instance.Device;

            deviceMusica         = DirectSound.DsDevice;
            this.FixedTickEnable = false;

            GameModel.instancia = this;
            musicaMenu          = new Sonido("SonidoPruebaTGC(Mono).wav", true);
            musicaFondoOutdoor  = new Sonido("nocturno, continuo.wav", -3000, true);
            estatica            = new Sonido("Radio Static-SoundBible.com-629277574.wav", -2500, true);
            agarrarPagina       = new Sonido("Page_Turn-Mark_DiAngelo-1304638748.wav", -300, false);
            humanHeartbeat      = new Sonido("human-heartbeat-daniel_simon.wav", -1000, false);
            respiracion         = new Sonido("Breathing Vent-SoundBible.com-18702822.wav", -600, false);

            //CreateFullScreenQuad();
            CreateRenderTarget();

            personaje = new Personaje();
            menu.instanciarMenu();
            nota.instanciarNotas(0);
            vidaUtilVela.instanciarVelas(0);
            velita.instanciarVelita();
            vidaUtilLinterna.instanciarLinternas(0);
            linternita.instanciarLinternita();
            InstanciarSonidosRandoms();
            InstanciarSonidosOutDoorRandoms();
            InstanciasSonidosInDoorRandoms();

            escenario.InstanciarEstructuras();
            monster = new Monster();
            monster.InstanciarMonster(monstruoActual);
            CrearObjetosEnEscenario();
            //iluminables.Add(monster.ghost);
            //iluminables.AddRange(escenario.tgcScene.Meshes);

            TgcMesh mesh1    = escenario.tgcScene.Meshes.Find(mesh => mesh.Name.Equals("linterna_1"));
            TgcMesh mesh2    = escenario.tgcScene.Meshes.Find(mesh => mesh.Name.Equals("linterna_2"));
            var     linterna = new Linterna(mesh1, mesh2, this);

            objetosInteractuables.Add(linterna);

            Camera = personaje;

            quads = new List <FullscreenQuad>();

            //ShadersDir
            effectPosProcesado           = TGCShaders.Instance.LoadEffect(ShadersDir + "PostProcesado.fx");
            effectPosProcesado.Technique = "PostProcessDefault";
            var unQuad = new FullscreenQuad(effectPosProcesado);

            unQuad.loEstoyUsando = true;
            this.quads.Add(unQuad);

            sombras = new Sombras(this);
            sombras.InstanciarSombras();

            this.renderizado = sombras;

            monsterBlur = new MonsterBlur(escenario, this);
            monsterBlur.instanciarMonsterBlur(ShadersDir, monster, MediaDir);
        }