I think I asked them about such an method a few years ago and they didn't think it was worth it.
What we need is a method/function that looks like this:
drawVertices(positions, uvs, colors, indices, blendMode)
Where:
positions
is an array of numbers (x, y coordinates)uvs
is an array of numbers (u, v coordinates, same length aspositions
)colors
is an array of numbers (ideally 32-bit rgba "ints", otherwise 4 floats r, g, b, a)indices
is an array of numbers, 3 consecutive numbers represent indices into the other arrays forming a triangletexture
depends on what type C3 uses to represent textures used on the GPU. Would basically map to an image in the atlas used by the skeletonblendMode
depends on what's available in C3
That'd be the most minimal thing we'd need which wouldn't support two-color tinting. We could also conform to whatever internal vertex/indices format is used in C3's batcher of course, as long as we can specify vertex positions, uvs, and colors.
QUAD3D and consorts would be way to inefficient, batching not withstanding. E.g. Spineboy is a few hundred triangles. That'd mean we'd have to create a few hundred instances of QUAD3D, which would have to be batched, etc. pp. That's a lot of work that's not necessary, as we already have all the data in a form that is mostly simple to submit in one go to the GPU.