// you can replace PointCloudModel with IBufferable in the method's parameter. public static RandomPointsRenderer Create(RandomPointsModel model) { var shaderCodes = new ShaderCode[2]; shaderCodes[0] = new ShaderCode(File.ReadAllText(@"shaders\RandomPoints.vert"), ShaderType.VertexShader); shaderCodes[1] = new ShaderCode(File.ReadAllText(@"shaders\RandomPoints.frag"), ShaderType.FragmentShader); var map = new CSharpGL.AttributeMap(); map.Add("in_Position", RandomPointsModel.position); var renderer = new RandomPointsRenderer(model, shaderCodes, map); renderer.ModelSize = model.Lengths; //renderer.stateList.Add(new PointSizeState(10)); return renderer; }
/// <summary> /// /// </summary> /// <param name="model"></param> /// <returns></returns> public static PointsRenderer Create(Points model) { var shaderCodes = new ShaderCode[2]; shaderCodes[0] = new ShaderCode(ManifestResourceLoader.LoadTextFile(@"Resources\Points.vert"), ShaderType.VertexShader); shaderCodes[1] = new ShaderCode(ManifestResourceLoader.LoadTextFile(@"Resources\Points.frag"), ShaderType.FragmentShader); var map = new CSharpGL.AttributeMap(); map.Add("in_Position", Points.strposition); var renderer = new PointsRenderer(model, shaderCodes, map, Points.strposition); renderer.ModelSize = model.Lengths; renderer.WorldPosition = model.WorldPosition; renderer.stateList.Add(new PointSizeState(10)); return renderer; }
// you can replace PointCloudModel with IBufferable in the method's parameter. public static RandomPointsRenderer Create(RandomPointsModel model) { var shaderCodes = new ShaderCode[2]; shaderCodes[0] = new ShaderCode(File.ReadAllText(@"shaders\RandomPoints.vert"), ShaderType.VertexShader); shaderCodes[1] = new ShaderCode(File.ReadAllText(@"shaders\RandomPoints.frag"), ShaderType.FragmentShader); var map = new CSharpGL.AttributeMap(); map.Add("in_Position", RandomPointsModel.position); var renderer = new RandomPointsRenderer(model, shaderCodes, map); renderer.Lengths = model.Lengths; //renderer.switchList.Add(new PointSizeSwitch(10)); return(renderer); }
// you can replace PointCloudModel with IBufferable in the method's parameter. public static PointCloudRenderer Create(PointCloudModel model) { var shaderCodes = new ShaderCode[2]; shaderCodes[0] = new ShaderCode(File.ReadAllText(@"shaders\PointCloud.vert"), ShaderType.VertexShader); shaderCodes[1] = new ShaderCode(File.ReadAllText(@"shaders\PointCloud.frag"), ShaderType.FragmentShader); var map = new CSharpGL.AttributeMap(); map.Add("in_Position", PointCloudModel.position); var renderer = new PointCloudRenderer(model, shaderCodes, map); renderer.ModelSize = model.Lengths; renderer.WorldPosition = model.WorldPosition; //renderer.stateList.Add(new PointSizeState(10)); return(renderer); }
/// <summary> /// /// </summary> /// <param name="model"></param> /// <returns></returns> public static PointsRenderer Create(Points model) { var shaderCodes = new ShaderCode[2]; shaderCodes[0] = new ShaderCode(ManifestResourceLoader.LoadTextFile(@"Resources\Points.vert"), ShaderType.VertexShader); shaderCodes[1] = new ShaderCode(ManifestResourceLoader.LoadTextFile(@"Resources\Points.frag"), ShaderType.FragmentShader); var map = new CSharpGL.AttributeMap(); map.Add("in_Position", Points.strposition); var renderer = new PointsRenderer(model, shaderCodes, map, Points.strposition); renderer.ModelSize = model.Lengths; renderer.WorldPosition = model.WorldPosition; renderer.stateList.Add(new PointSizeState(10)); return(renderer); }
/// <summary> /// Creates a renderer that renders a evaluator(a bezier curve or surface) and its control points. /// </summary> /// <param name="controlPoints"></param> /// <param name="type"></param> /// <returns></returns> public static BezierRenderer Create(IList <vec3> controlPoints, BezierType type) { var shaderCodes = new ShaderCode[2]; shaderCodes[0] = new ShaderCode(ManifestResourceLoader.LoadTextFile(@"Resources\Points.vert"), ShaderType.VertexShader); shaderCodes[1] = new ShaderCode(ManifestResourceLoader.LoadTextFile(@"Resources\Points.frag"), ShaderType.FragmentShader); var map = new CSharpGL.AttributeMap(); map.Add("in_Position", Points.strposition); var model = new Points(controlPoints); var renderer = new BezierRenderer(controlPoints, type, model, shaderCodes, map, Points.strposition); renderer.Lengths = model.Lengths; renderer.WorldPosition = model.WorldPosition; renderer.switchList.Add(new PointSizeSwitch(10)); return(renderer); }