UV is now divided by 256 instead of 255. This fixes issues where alignment would never match up with the PlayStation.
Added option to preserve old alignment behavior (-olduv).
Converting a byte (or pair of bytes) to UV coordinate(s) must always call GeomUtils.ConvertUV.
One issue exists with this method of UV alignment, and it's UVs where all U or V coordinates are identical. When this happens, the texture tears. To fix this, if all coordinates are identical, then the identical U or V is incremented by 1f / GeomUtils.UVScalar. This is handled in the function Triangle.CorrectUVTearing, and should only be called for textured triangles.
Added Texture RenderWidth/RenderHeight which represents the usable size of the texture (different from Width/Height for VRAMPages).
Added GeomUtils.One2Rad.
Added GeomUtils ConvertFixed12 and ConvertFixed16 (however these aren't used yet).
Removed BRenderHelper and replaced it with BinaryReaderExtensions, which contains the same BigEndian methods. Little endian methods are excluded because they're not needed.
Removed Triangle ExtraPaddingData.
Renamed TMDHelper uses of S/T to U/V. This includes PrimitiveDataType.
Reordered PrimitiveDataType enums to match byte size (besides padding). Also removed all custom padding enum values, since they're no longer needed.
This fixes issue #83.
1f / GeomUtils.UVScalar
. This is handled in the function Triangle.CorrectUVTearing, and should only be called for textured triangles.