public void instanciarMonsterBlur(string ShadersDir, Monster monster, string MediaDir) { var d3dDevice = D3DDevice.Instance.Device; MyShaderDir = ShadersDir; //Cargar mesh /*TgcMesh sectario; * * var loader = new TgcSceneLoader(); * var scene2 = loader.loadSceneFromFile(MediaDir + "Modelame\\Sectarian-TgcScene.xml"); * * sectario = scene2.Meshes[0];*/ //sectario.Position = new TGCVector3(9500f, -350f, -15000f); //sectario.Transform = TGCMatrix.Translation(0, -350, 0); /*mesh = monster.ghost; * effect = TGCShaders.Instance.LoadEffect(MyShaderDir + "MonsterMotionBlur.fx"); * effect.Technique = "DefaultTechnique"; * mesh.Effect = effect;*/ effect = TGCShaders.Instance.LoadEffect(MyShaderDir + "MonsterMotionBlur.fx"); //Configurar Technique dentro del shader effectTrait = TGCShaders.Instance.LoadEffect(MyShaderDir + "PostProcesado.fx"); // stencil g_pDepthStencil = d3dDevice.CreateDepthStencilSurface(d3dDevice.PresentationParameters.BackBufferWidth, d3dDevice.PresentationParameters.BackBufferHeight, DepthFormat.D24S8, MultiSampleType.None, 0, true); // inicializo el render target g_pRenderTarget = new Texture(d3dDevice, d3dDevice.PresentationParameters.BackBufferWidth , d3dDevice.PresentationParameters.BackBufferHeight, 1, Usage.RenderTarget, Format.X8R8G8B8, Pool.Default); // velocidad del pixel g_pVel1 = new Texture(d3dDevice, d3dDevice.PresentationParameters.BackBufferWidth , d3dDevice.PresentationParameters.BackBufferHeight, 1, Usage.RenderTarget, Format.A16B16G16R16F, Pool.Default); g_pVel2 = new Texture(d3dDevice, d3dDevice.PresentationParameters.BackBufferWidth , d3dDevice.PresentationParameters.BackBufferHeight, 1, Usage.RenderTarget, Format.A16B16G16R16F, Pool.Default); // Resolucion de pantalla effect.SetValue("screen_dx", d3dDevice.PresentationParameters.BackBufferWidth); effect.SetValue("screen_dy", d3dDevice.PresentationParameters.BackBufferHeight); CustomVertex.PositionTextured[] vertices = { new CustomVertex.PositionTextured(-1, 1, 1, 0, 0), new CustomVertex.PositionTextured(1, 1, 1, 1, 0), new CustomVertex.PositionTextured(-1, -1, 1, 0, 1), new CustomVertex.PositionTextured(1, -1, 1, 1, 1) }; //vertex buffer de los triangulos g_pVBV3D = new VertexBuffer(typeof(CustomVertex.PositionTextured), 4, d3dDevice, Usage.Dynamic | Usage.WriteOnly, CustomVertex.PositionTextured.Format, Pool.Default); g_pVBV3D.SetData(vertices, 0, LockFlags.None); antMatWorldView = TGCMatrix.Identity; }