Beispiel #1
0
        // TODO: add default values

        public ShaderParameter(string parameterName, string registerName, HLSLType type, RenderMethodExtern renderMethodExtern = RenderMethodExtern.none, ShaderParameterFlags flags = ShaderParameterFlags.None)
        {
            ParameterName      = parameterName;
            RegisterName       = registerName;
            CodeType           = type;
            RegisterType       = GetRegisterType(type);
            RenderMethodExtern = renderMethodExtern;
            Flags = flags;
        }
Beispiel #2
0
 public void AddFloat4ColorVertexParameter(string parameterName, RenderMethodExtern rmExtern = RenderMethodExtern.none)
 {
     Parameters.Add(new ShaderParameter(parameterName, parameterName, HLSLType.Float4, rmExtern, (ShaderParameterFlags.IsVertexShader | ShaderParameterFlags.IsColor)));
 }
Beispiel #3
0
 public void AddSamplerVertexParameter(string parameterName, RenderMethodExtern rmExtern = RenderMethodExtern.none)
 {
     Parameters.Add(new ShaderParameter(parameterName, parameterName, HLSLType.sampler2D, rmExtern, ShaderParameterFlags.IsVertexShader));
     Parameters.Add(new ShaderParameter(parameterName, parameterName + "_xform", HLSLType.Xform_2d, rmExtern, ShaderParameterFlags.IsVertexShader));
 }
Beispiel #4
0
        //
        // Vertex shader parameters easy add methods
        //

        public void AddSamplerWithoutXFormVertexParameter(string parameterName, RenderMethodExtern rmExtern = RenderMethodExtern.none)
        {
            Parameters.Add(new ShaderParameter(parameterName, parameterName, HLSLType.sampler2D, rmExtern, ShaderParameterFlags.IsVertexShader));
        }
Beispiel #5
0
 public void AddIntegerParameter(string parameterName, RenderMethodExtern rmExtern = RenderMethodExtern.none)
 {
     Parameters.Add(new ShaderParameter(parameterName, parameterName, HLSLType.Int, rmExtern));
 }
Beispiel #6
0
 public void AddFloat3ColorParameter(string parameterName, RenderMethodExtern rmExtern = RenderMethodExtern.none)
 {
     Parameters.Add(new ShaderParameter(parameterName, parameterName, HLSLType.Float3, rmExtern, ShaderParameterFlags.IsColor));
 }
Beispiel #7
0
 public void AddXFormOnlyParameter(string parameterName, RenderMethodExtern rmExtern = RenderMethodExtern.none)
 {
     Parameters.Add(new ShaderParameter(parameterName, parameterName + "_xform", HLSLType.Xform_2d, rmExtern, ShaderParameterFlags.IsXFormOnly));
 }
Beispiel #8
0
 public void AddIntegerVertexParameter(string parameterName, RenderMethodExtern rmExtern = RenderMethodExtern.none)
 {
     Parameters.Add(new ShaderParameter(parameterName, parameterName, HLSLType.Int, rmExtern, ShaderParameterFlags.IsVertexShader));
 }
Beispiel #9
0
 public void AddCategoryVertexParameter(string parameterName, RenderMethodExtern rmExtern = RenderMethodExtern.none)
 {
     Parameters.Add(new ShaderParameter(parameterName, "category_" + parameterName, HLSLType.Float4, rmExtern, ShaderParameterFlags.IsVertexShader | ShaderParameterFlags.IsCategory));
 }
Beispiel #10
0
 public void AddPrefixedFloat4VertexParameter(string parameterName, string prefix, RenderMethodExtern rmExtern = RenderMethodExtern.none)
 {
     Parameters.Add(new ShaderParameter(parameterName, prefix + parameterName, HLSLType.Float4, rmExtern, ShaderParameterFlags.IsVertexShader));
 }