TMDHelper now treats gouraud as gradation (when unlit) for TMD too (removed mode checks since they're no longer needed).
Add support for parsing StraightLine and Sprite in TMDHelper. Not tested when any real or hand-made data yet.
TMDParser now honors Scale value (which is 2^Scale).
Fixed MeshBuilders Create debug functions assigning LocalMatrix instead of OriginalLocalMatrix.
Changed TriangleMeshBuilder AddTriangle and AddQuad functions to accept 3-4 colors just like LineMeshBuilder. color0 defaults to White, and all other colors default to color0.
Added UV overloads to TriangleMeshBuilder AddTriangle and AddQuad.
Split up AddTriangle and AddQuad into four regions: AddTriangle, AddTriangle (matrix), AddQuad, and AddQuad (matrix).
Added TriangleMeshBuilder AddSprite for testing purposes.
Renamed RenderFlags.VibRibbon to Line.
Added RenderFlags.Sprite and added SpriteCenter property to ModelEntity/RenderInfo. This property should be assigned as the origin of the sprite, so it knows where to rotate around. (Currently sprites are stored as a quad, and so they don't retain their center information. The only other good solution for this would be to make a geometry shader to build sprites).
(Implemented, but RootEntity doens not respect this yet due to issues) ModelEntity now has a property AttachedOnly, when true, all triangles are attached, meaning the model has no vertices of its own. When this is the case, RootEntity will ignore it when computing bounds. ComputeAttachedOnly is called by HMDParser and PSXParser, as they're the only models that can have attached vertices.
MeshBatch focus no longer uses the individual bounds of the selected root entity's models, but the root entity's bounds itself.
MeshBatch now modifies modelMatrix during DrawMesh when the Sprite render flag is set. (Math is not 100% accurate for transforming the sprite position, but its orientation always seems fine.