예제 #1
0
        public override string ToString()
        {
            var sb = new StringBuilder();

            if (TessellatorDomain != TessellatorDomain.Undefined)
            {
                sb.AppendLine("// Tessellation Domain   # of control points");
                sb.AppendLine("// -------------------- --------------------");
                sb.AppendLine(string.Format("// {0,-20} {1,20}", TessellatorDomain.GetDescription(),
                                            ControlPoints));
                sb.AppendLine("//");
            }
            if (HullShaderOutputPrimitive != TessellatorOutputPrimitive.Undefined)
            {
                sb.AppendLine("// Tessellation Output Primitive  Partitioning Type ");
                sb.AppendLine("// ------------------------------ ------------------");
                sb.AppendLine(string.Format("// {0,-30} {1,-18}",
                                            HullShaderOutputPrimitive.GetDescription(ChunkType.Stat),
                                            HullShaderPartitioning.GetDescription(ChunkType.Stat)));
                sb.AppendLine("//");
            }
            if (IsSampleFrequencyShader)
            {
                sb.AppendLine("// Pixel Shader runs at sample frequency");
                sb.AppendLine("//");
            }
            return(sb.ToString());
        }
예제 #2
0
        public static string GetAttributeName(this TessellatorDomain topology)
        {
            switch (topology)
            {
            case TessellatorDomain.Isoline:
                return("isoline");

            case TessellatorDomain.Triangle:
                return("triangle");

            case TessellatorDomain.Quadrilateral:
                return("quad");

            default:
                return(topology.ToString());
            }
        }