示例#1
0
        public ShaderCode Matrix()
        {
            CodeGenerator generator = new CodeGenerator(BindingStage.VertexShader);
            Floatx4       position  = generator.InputFloatx4(PinComponent.Position);
            Float4x4      matrix    = generator.CreateFloat4x4("GlobalTransform");

            position = position * matrix;

            return(generator.ShaderCode);
        }
示例#2
0
        public ShaderCode Swizzle()
        {
            CodeGenerator generator = new CodeGenerator(BindingStage.VertexShader);

            Floatx3  p = generator.InputFloatx3(PinComponent.Position);
            Float4x4 m = generator.CreateFloat4x4("Matrix");

            p.XYZ = (new Floatx4(p, 1.0f) * m).XYZ;

            return(generator.ShaderCode);
        }