public DeferedVisual(IRenderState renderState, IContentLoader contentLoader) { this.renderState = renderState; deferedDataProgram = contentLoader.Load <IShaderProgram>(new string[] { "lambert.vert", "deferedData.frag" }); deferedProgram = contentLoader.LoadPixelShader("defered.frag"); //deferedProgram = contentLoader.Load<IShaderProgram>("lambert.*"); var mesh = Meshes.CreateCornellBox(); //TODO: ATI seams to do VAO vertex attribute ordering different for each shader would need to create own VAO geometry = VAOLoader.FromMesh(mesh, deferedDataProgram); }
public MainVisual(IRenderState renderState, IContentLoader contentLoader) { renderState.Set(new DepthTest(true)); renderState.Set(new FaceCullingModeState(FaceCullingMode.BACK_SIDE)); shaderProgram = contentLoader.Load <IShaderProgram>("shader.*"); var mesh = Meshes.CreateCornellBox(); geometry = VAOLoader.FromMesh(mesh, shaderProgram); bufferMaterials.Set(Meshes.CreateCornellBoxMaterial(), BufferUsageHint.StaticDraw); }
public MainVisual(IRenderState renderState, IContentLoader contentLoader) { this.renderState = renderState; shaderProgram = contentLoader.Load <IShaderProgram>("lambert.*"); shaderPostProcess = contentLoader.LoadPixelShader("ChromaticAberration"); shaderPostProcess = contentLoader.LoadPixelShader("swirl"); shaderPostProcess = contentLoader.LoadPixelShader("sepia"); shaderPostProcess = contentLoader.LoadPixelShader("vignet"); shaderPostProcess = contentLoader.LoadPixelShader("Ripple"); var mesh = Meshes.CreateCornellBox(); //TODO: ATI seams to do VAO vertex attribute ordering different for each shader would need to create own VAO geometry = VAOLoader.FromMesh(mesh, shaderProgram); }
public void ShaderChanged(string name, Shader shader) { if (ShaderName != name) { return; } this.shader = shader; if (ReferenceEquals(shader, null)) { return; } Mesh mesh = Meshes.CreateCornellBox(); geometry = VAOLoader.FromMesh(mesh, shader); bufferMaterials.Set(Meshes.CreateCornellBoxMaterial(), BufferUsageHint.StaticDraw); }
public void ShaderChanged(string name, Shader shader) { if (ShaderPostProcessName == name) { shaderPostProcess = shader; //todo: ati seams to do VAO vertex attribute ordering different for each shader would need to create own vao } else if (ShaderName == name) { this.shader = shader; if (ReferenceEquals(shader, null)) { return; } Mesh mesh = Meshes.CreateCornellBox(); geometry = VAOLoader.FromMesh(mesh, shader); } }