public void RenderQuad(FullscreenQuad unQuad) { var device = D3DDevice.Instance.Device; device.VertexFormat = CustomVertex.PositionTextured.Format; device.SetStreamSource(0, unQuad.unQuad.ScreenQuadVB, 0); unQuad.unEfecto.SetValue("renderTarget", renderTarget1); // Dibujamos el full screen quad unQuad.unEfecto.Begin(FX.None); unQuad.unEfecto.BeginPass(0); device.DrawPrimitives(PrimitiveType.TriangleStrip, 0, 2); unQuad.unEfecto.EndPass(); unQuad.unEfecto.End(); }
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); }