// ------------------------------------------------------------------ // Desc: // ------------------------------------------------------------------ protected override Vector3[] GetVertices(Space _space) { if (textureInfo_ == null) { return(new Vector3[0]); } exList <Vector3> vb = exList <Vector3> .GetTempList(); UpdateBufferSize(); vb.AddRange(vertexCount_); switch (spriteType_) { case exSpriteType.Simple: SpriteBuilder.SimpleUpdateVertexBuffer(this, textureInfo_, useTextureOffset_, _space, vb, 0); break; case exSpriteType.Sliced: SpriteBuilder.SimpleUpdateVertexBuffer(this, textureInfo_, useTextureOffset_, _space, vb, 0); SpriteBuilder.SimpleVertexBufferToSliced(this, textureInfo_, vb, 0); break; case exSpriteType.Tiled: SpriteBuilder.TiledUpdateVertexBuffer(this, textureInfo_, useTextureOffset_, tiledSpacing_, _space, vb, 0); break; case exSpriteType.Diced: SpriteBuilder.SimpleUpdateVertexBuffer(this, textureInfo_, useTextureOffset_, _space, vb, 0); SpriteBuilder.SimpleVertexBufferToDiced(this, textureInfo_, vb, 0); break; } return(vb.ToArray()); }
// ------------------------------------------------------------------ // Desc: // ------------------------------------------------------------------ protected override Vector3[] GetVertices(Space _space) { // TODO: only return the rotated bounding box of the sprite font int visibleVertexCount = text_.Length * 4; exList <Vector3> vertices = exList <Vector3> .GetTempList(); vertices.AddRange(visibleVertexCount); SpriteFontBuilder.BuildText(this, _space, vertices, 0); return(vertices.ToArray()); }