Lots of rendering related changes, specifically for BackedQuad and IQuadTransformers.
Removed our deprecated model generators, modders should have been using vanilla's for a while.
These are optional libraries that are only loaded when requested by mods.
Includes new ReadOnlyInMemoryFileSystem to improve performance of JarInJar parsing.
There a lot of performance improvements related to events.
No more InheritableEvent for abstract events that you shouldn't add listeners to anyway, like EntityEvent. Use their sub-events.
Made a lot more events records and interfaces. Mostly just a binary break, but has better performance.
Mod bus posting methods are now static, no more ModLoader.get() for those.
ObjectHolder was removed, use RegistryObject.
Changed RuntimeEnumExtender to only target Minecraft classes. If you want other modders to interact with your API, use an Interface instead of Enum.
Moved some abstract event methods to only the relevant sub-events now, e.g. can no longer check the side of a ClientTickEvent, because it'll always be client
Rendering has changed a lot, they now batch most things together so that the game will render faster.
RenderHighlightEvent changed a lot
See https://github.com/MinecraftForge/MinecraftForge-Experimental/tree/1.21.9-dev for unsquashed commits.
Co-authored-by: Paint_Ninja <PaintNinja@users.noreply.github.com>