- Stop providing a buffered model supplier
- Instead, provide an IModel supplier
- IModel exposes basic properties of models
- IModel exposes a method to copy the model to a VecBuffer
- Move material stuff to its own package
- The various render functions in the material tree now bind to specific render layers
- Instancers can choose which layer to use
- The layers are SOLID, CUTOUT, and TRANSPARENT
- More layers are likely unnecessary, but we'll see
- Deprecate functions in MaterialManager in favor of more builderesque ones using MaterialGroups
- Material managers should not be inside WorldContext
- InstancedRenderDispatcher now stores the material managers
- Delete crumbling material manager on renderer reload
- CrumblingRenderer gets its own class
- CrumblingRenderer is less jank overall
- Defer InstancedRenderRegistry deprecated function removal until 0.3
- Ender chests and trapped chests, too
- Chests orient themselves correctly
- Lids do not position themselves correctly
- Some math, will probably replace with JOML
- Refactor InstancedRenderRegistry to allow for 3rd party TEs to have instances
- Add ChestInstance, incomplete but there
- Add basic api for building vanilla formatted models
- Better instance factory registration
- Check that sectionY is within the bounds of the chunk's section array, fixes#2
- Refactor usages of Tile and Entity InstanceManagers to refer to the base class InstanceManager<>
- Rename Client to FlywheelClient
- Remove Shadow plugin
- Remove generated source set
- Remove unused properties in gradle.properties
- Organize all imports
- Thanks for the list pepper!
- Explicit call to Shader#parseStructs is required before they can be read.
- Fixes a startup crash on some drivers (apparently nvidia is cool with #[...], but other drivers fail)
- Added /flywheel backend command to replace /create experimentalRendering
- Added /flywheel normalOverlay command
- Need to think more about a good way to do this in a client only way
- Added basic config
- Logo in README.md (thanks, dani!)
- Separate model-level instance management from object-level instance management
- Separate material management from rendering
- A few things here and there related to entity instancing
- Add a rudimentary command to spawn superglue
- BufferedModel is no longer abstract.
- InstancedModel no longer inherits from BufferedModel, it accepts one as input.
- Replace usage of IndexedModel with BufferedModel