public override void SetShaderProgramOptions(RenderNode renderer)
 {
     Matrix4 WVP = RootNode.GetCurrentScene().ProjectionMatrix * RootNode.GetCurrentScene().Camera.ViewMatrix * renderer.WorldMatrix;
     simpleShader.SetUniformValue(0, ref WVP);
     simpleShader.SetUniformValue(1, ref Color);
     RootNode.graphicsContext.SetTexture(1, renderer[1]);
 }
        public EntityNode(Vector3 Position, RenderNode body, Entity physicsBody)
        {
            Body = body;

            PhysicsBody = physicsBody;
            this.Position = Position;

            Initialized = false;
        }
        public override void Initialize()
        {
            sphere =
                new RenderNode(RenderableFactory.LoadModel("vfs0:/Application/Environment/Resources/sphere.a3d")
                                    , new Simple());

            spaceBg = new Texture2D("Application/Environment/Resources/starMap.png", false);
            fgStars = new Texture2D("Application/Environment/Resources/Hyades.png", false);

            Initialized = true;
        }
Example #4
0
        public SSAO()
        {
            if(ssaoShader == null)
            {
                ssaoShader = new ShaderProgram(VFS.GetFileBytes("vfs1:/shaders/SSAO.cgx"));
                ssaoShader.SetAttributeBinding(0, "a_Position");
                ssaoShader.SetAttributeBinding(1, "a_TexCoord");
            }

            if(fsq == null)
            {
                fsq = new RenderNode(RenderableFactory.CreatePlane(1, 1), this);
            }
        }
        public override void SetShaderProgramOptions(RenderNode renderer)
        {
            Matrix4 WVP = RootNode.GetCurrentScene().ProjectionMatrix * RootNode.GetCurrentScene().Camera.ViewMatrix * renderer.WorldMatrix;
            ubershader.SetUniformValue(0, ref WVP);

            Matrix4 world = renderer.WorldMatrix;
            ubershader.SetUniformValue(1, ref world);

            Vector3 lightDir = Vector3.UnitX;
            ubershader.SetUniformValue(2, ref lightDir);

            ubershader.SetUniformValue(3, ref RootNode.GetCurrentScene().Camera.Forward);
            ubershader.SetUniformValue(4, 0.5f);
        }
Example #6
0
        public override void SetShaderProgramOptions(RenderNode renderer)
        {
            Matrix4 WVP = RootNode.GetCurrentScene().ProjectionMatrix * RootNode.GetCurrentScene().Camera.ViewMatrix * renderer.WorldMatrix;

            try{
            depth.SetUniformValue(0, ref WVP);
            }catch(ObjectDisposedException)
            {
                depth = new ShaderProgram(VFS.GetFileBytes("vfs1:/shaders/Depth.cgx"));
                depth.SetAttributeBinding(0, "a_Position");
                depth.SetUniformBinding(0, "WorldViewProj");
                depth.SetUniformValue(0, ref WVP);
                RootNode.graphicsContext.SetShaderProgram(depth);
            }

            RootNode.graphicsContext.SetFrameBuffer(RenderPassBuf);
        }
Example #7
0
 public override void SetShaderProgramOptions(RenderNode renderer)
 {
 }
 public abstract void SetShaderProgramOptions(RenderNode renderer);