public CGeometryShader(ICDevice device, CShaderReflection reflection) : base(device, reflection) { maxVertexCount = Reflection.GetMaxVertexCount(); inputPrimitiveType = Reflection.GetGeometryInputPrimitiveType(); outputPrimitiveType = Reflection.GetGeometryOutputPrimitiveType(); }
public static string GeometryShaderOutputPrimitiveTypeToString(GeometryShaderOutputPrimitiveType type) { switch (type) { case GeometryShaderOutputPrimitiveType.Point: return "points"; case GeometryShaderOutputPrimitiveType.Line: return "line_strip"; case GeometryShaderOutputPrimitiveType.Triangle: return "triangle_strip"; default: throw new ArgumentOutOfRangeException("type"); } }
public static string GetStreamTypeForOutputType(GeometryShaderOutputPrimitiveType type) { switch (type) { case GeometryShaderOutputPrimitiveType.Point: return "PointStream"; case GeometryShaderOutputPrimitiveType.Line: return "LineStream"; case GeometryShaderOutputPrimitiveType.Triangle: return "TriangleStream"; default: throw new ArgumentOutOfRangeException("type"); } }