Jozufozu
172971d732
Optimize imports
2021-07-23 23:46:30 -07:00
Jozufozu
52e6d64bd9
MaterialManager and MaterialGroup refactor
...
- Material manager builder
- No more overload render method/IProgramCallback
- MaterialRenderers accept a Program consumer instead
2021-07-23 23:45:31 -07:00
Jozufozu
e4a72544ea
Update forge
...
- but not to 36.2.0 because gradle hates me
2021-07-23 16:45:38 -07:00
Jozufozu
07825fb56f
Basic model abstraction
...
- 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
2021-07-23 12:26:32 -07:00
Jozufozu
a42073f59a
Merge branch 'dev' into vanilla-opt
...
# Conflicts:
# src/main/java/com/jozufozu/flywheel/backend/instancing/Instancer.java
2021-07-22 14:09:28 -07:00
Jozufozu
fe954898bf
Instance stealing
2021-07-22 14:07:02 -07:00
Jozufozu
3b906e39a1
MaterialGroups and massive refactors
...
- 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
2021-07-21 20:28:20 -07:00
Jozufozu
6f06283f6f
Instancers like suppliers
...
- Instancers accept model suppliers instead of models directly
- gpu resource allocation is deferred until render time
2021-07-19 15:45:00 -07:00
Jozufozu
7f2d8d8cb2
Prime update divisors
...
- Smooths out load when ticking too many instances
2021-07-18 18:21:30 -07:00
Jozufozu
e1aa055983
Parallel and caching
...
- NEEDS MORE TESTING
- Tick and update instances in parallel
- Mixin to cache chunk lookups
2021-07-18 18:00:09 -07:00
Jozufozu
4b68cd34ef
Instanced Shulker boxes
...
- Preliminary concept of RenderStates
- Vanilla has this too but it's bloated
2021-07-18 15:05:12 -07:00
Jozufozu
3cc4ec7d6a
Utilities created during an attempt at signs
...
- Cuboids can be inverted across Y and Z
- TransformStack scaling
- VecBuffer coloring
2021-07-17 17:06:49 -07:00
Jozufozu
faceccb327
Merge branch 'dev' into shader-pipeline
2021-07-15 12:00:40 -07:00
Jozufozu
b028db3c29
Update Gradle wrapper files
...
- thanks pepper
2021-07-15 11:58:26 -07:00
Jozufozu
fdf839cd02
Mojmixins
2021-07-15 11:51:57 -07:00
Jozufozu
2238a00bac
Remap to Mojmap, update gradle
2021-07-15 11:36:24 -07:00
Jozufozu
c4c07d8edd
Merge branch 'dev' into shader-pipeline
2021-07-14 17:23:47 -07:00
Jozufozu
c6b0996b8a
Ready for 0.1.1 (finally)
...
- Might have bumped the version too early.
- Fix crash rendering breaking overlay after reloading resource packs.
2021-07-14 16:52:35 -07:00
Jozufozu
ef46e5acbf
Fix gl error spam
...
- CrumblingProgram was trying to upload a uniform before the location was queried.
- Adjust WorldProgram init to mitigate this in the future.
2021-07-14 15:47:44 -07:00
Jozufozu
d256397cb8
Fix crash on resource reload
...
- Backend wasn't properly cleaning up its state
- Sneaky error in WorldAttached
2021-07-14 15:35:52 -07:00
Jozufozu
95dabd900e
Better errors still
...
- Actually can print something that underlines a span
- Resolve imports and use the resolutions during building
- Doesn't actually make sense to have #checkErrors
- Simplify some regexes
- Parse structs
2021-07-14 15:20:49 -07:00
Jozufozu
279d3a2de7
Merge branch 'dev' into shader-pipeline
2021-07-13 23:31:16 -07:00
Jozufozu
defc4dace5
Hacky program link debug info
...
- Log which gl ids are assigned to different programs
- Log name and basic state information
2021-07-13 15:57:14 -07:00
Jozufozu
dcacdedba9
Bump version - 0.1.1
2021-07-13 14:00:44 -07:00
Jozufozu
9b17c96741
Merge branch 'dev' into shader-pipeline
...
# Conflicts:
# src/main/java/com/jozufozu/flywheel/core/WorldContext.java
2021-07-12 23:53:35 -07:00
Jozufozu
07a2cfd7db
Protect against java versioning
...
- Cast ByteBuffers to Buffer before calling #rewind or #flip
2021-07-12 16:45:36 -07:00
Jozufozu
5d47cc6136
Clean up
...
- 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
2021-07-12 16:42:43 -07:00
Jozufozu
f0822a5cd4
Fix bell not stopping at the bottom of its swing
2021-07-12 15:19:20 -07:00
Jozufozu
88b00e2ce2
Fix import ordering
2021-07-12 15:02:08 -07:00
Jozufozu
37a72842cf
Atlases, bells, breaking
...
- Bell instance
- Fix some inconsistencies with PartBuilder
- Store information on texture atlasses
- Crumbling overlay fixes
2021-07-12 14:52:54 -07:00
Jozufozu
1cfffa4448
Correctly render chests
...
- Give up on quaternions
- Lids lazily update transform matrices
- MatrixTransformStack
2021-07-11 15:54:51 -07:00
Jozufozu
3fb60b06d1
Actually backwards compat is important
...
- Reintroduce InstancedRenderRegistry#register methods
- Deprecate the methods
2021-07-10 18:42:15 -07:00
Jozufozu
b47a14566d
Merge branch 'dev' into vanilla-opt
2021-07-10 17:19:07 -07:00
Jozufozu
1bf68691da
Bump version - 0.1.0
2021-07-10 13:06:18 -07:00
Jozufozu
12abeb0cc5
Rename builders
...
- *Registrater -> *Config
- build -> register
2021-07-10 11:36:30 -07:00
Jozufozu
30cc011ee9
Lids everywhere
...
- Ender chests and trapped chests, too
- Chests orient themselves correctly
- Lids do not position themselves correctly
- Some math, will probably replace with JOML
2021-07-10 11:33:01 -07:00
Jozufozu
cda3a2e11a
Merge branch 'dev' into vanilla-opt
...
# Conflicts:
# src/main/java/com/jozufozu/flywheel/FlywheelClient.java
2021-07-09 13:45:52 -07:00
Jozufozu
4d91c06e86
PartialModel gets called from the right place
2021-07-09 13:39:56 -07:00
Jozufozu
0c611dbcb3
4d chest
...
- 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
2021-07-09 13:24:26 -07:00
Jozufozu
1ce6e6a70b
Sporadic work done in an airport
...
- Initial ErrorBuilder class
- Random documentation
2021-07-07 22:08:33 -07:00
Jozufozu
fff46ec348
Common type and character positions
...
- Shader source abstractions now inherit from AbstractShaderElement
- Spans keep track of line and column positions
2021-07-06 12:38:32 -07:00
Jozufozu
b10e4024c3
Load a single file
...
- Use the new immutable sources system to load a single file
- It doesn't compile it yet
- Slightly less verbose name
2021-07-05 12:09:13 -07:00
Jozsef
fa5d586f0a
Merge branch 'dev' into shader-pipeline
2021-07-02 13:23:02 -07:00
Jozsef
608204ee0a
Crash fix and refactor
...
- 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<>
2021-07-02 13:12:33 -07:00
Jozsef
15d5396bc9
More loading tweaks
...
- Immutable function map
- Parse #use directives on load
- Recursive include gathering
- More sane spec loading in WorldContext
- StateSensitiveMultiProgram builder
- Rename confusing game state things
2021-07-02 12:34:12 -07:00
Jozsef
d55811d1b3
Update README.md
...
- Add info on remapRefMap
- Add info on how to find newer Flywheel versions
2021-06-30 17:02:28 -07:00
Jozsef
959434e01a
Merge branch 'dev' into shader-pipeline
2021-06-30 16:29:39 -07:00
Jozsef
214642c173
Even more AT culling
2021-06-30 15:50:23 -07:00
Jozsef
7906a3261f
Cull AT
2021-06-30 15:43:38 -07:00
Jozsef
1e2c6f49eb
Merge branch 'dev' into shader-pipeline
2021-06-30 13:10:50 -07:00