コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }