/// <summary> /// opengl UI for Axis /// </summary> /// <param name="anchor"></param> /// <param name="margin"></param> /// <param name="size"></param> /// <param name="zNear"></param> /// <param name="zFar"></param> /// <param name="partCount">24 as default.</param> public UIAxis( System.Windows.Forms.AnchorStyles anchor, System.Windows.Forms.Padding margin, System.Drawing.Size size, int zNear, int zFar, int partCount = 24) : base(anchor, margin, size, zNear, zFar) { AxisRenderer renderer = AxisRenderer.Create(partCount); this.Renderer = renderer; }
public static AxisRenderer Create(int partCount = 24) { var shaderCodes = new ShaderCode[2]; shaderCodes[0] = new ShaderCode(ManifestResourceLoader.LoadTextFile( @"Resources.UIAxis.vert"), ShaderType.VertexShader); shaderCodes[1] = new ShaderCode(ManifestResourceLoader.LoadTextFile( @"Resources.UIAxis.frag"), ShaderType.FragmentShader); var map = new PropertyNameMap(); map.Add("in_Position", Axis.strPosition); map.Add("in_Color", Axis.strColor); var model = new Axis(partCount); var renderer = new AxisRenderer(model, shaderCodes, map, "position"); return(renderer); }