private void applyPolygonData() { if (this.currentPolygonType == PolygonType.None) { return; } IShaderData shaderData = null; switch (this.currentPolygonType) { case PolygonType.Sprite: shaderData = new SpriteData(this.localTransform, this.textureId, this.color, this.clipArea, this.linearFiltering); break; case PolygonType.Orbit: shaderData = new OrbitData(this.minRadius, this.maxRadius, this.color, this.localTransform, this.sprite); break; case PolygonType.Sdf: shaderData = new SdfData(this.localTransform, this.textureId, this.color, this.clipArea); break; default: throw new NotImplementedException(this.currentPolygonType.ToString()); } this.polygons.Add(new PolygonData(this.z, shaderData, this.vertexData)); //clean up this.vertexData = new List <float>(); this.localTransform = Matrix4.Identity; }
public void UpdateDrawable(IShaderData shaderUniforms) { this.ShaderData = shaderUniforms; if (this.spawnedDrawable != null) { this.spawnedDrawable.Update(shaderUniforms); } }
public void Update(IShaderData shaderUniforms) { this.objectData = shaderUniforms as SdfData; }
public void Update(IShaderData shaderUniforms) { this.objectData = (SpriteData)shaderUniforms; this.updateFilters(); }
public void Update(IShaderData shaderUniforms) { this.objectData = (SpriteData)shaderUniforms; }
public PolygonData(float z, IShaderData shaderUniforms, IEnumerable <Vector2> vertexData) : this(z, shaderUniforms, vertexData.SelectMany(v => new [] { v.X, v.Y }).ToList()) { }
public PolygonData(float z, IShaderData shaderUniforms, ICollection <float> vertexData) { this.Z = z; this.ShaderData = shaderUniforms; this.VertexData = vertexData; }