Jozufozu
8407fed299
Don't crash when block entities are placed
...
- Block entities got a huge refactor in 1.17, a lot of the old code needs to be rethought
2021-09-15 14:29:58 -07:00
Jozufozu
40034daa64
Minecraft already stores the projection matrix
...
mixins--
2021-09-15 14:27:51 -07:00
Jozufozu
a930bc97cc
It launches
...
- yeet the fog
- update mixin compatibility level
2021-09-15 13:49:18 -07:00
137de259e5
Fix obvious errors
2021-09-15 09:26:51 +02:00
2ae580259c
Remap, update forge, minecraft and java
2021-09-15 09:14:30 +02:00
6fd544837c
update gradle and mixin
2021-09-15 08:33:12 +02:00
Jozufozu
ee7f6fd5e2
fixup! Initial data/struct format refactor
2021-09-14 13:52:52 -07:00
Jozufozu
613c933206
Revert "Parallel light updates"
...
Caused a crash, likely related to the use of weak references
This reverts commit c68b2bbf91
.
2021-09-14 13:19:52 -07:00
Jozufozu
261b901e80
LightPacking utility class
2021-09-14 13:17:13 -07:00
Jozufozu
fbcc1f0a10
Initial data/struct format refactor
...
- Inspired by jellysquid3's vertex sinks
- More robust/extensible solution for data writes
2021-09-12 14:49:00 -07:00
Jozufozu
c68b2bbf91
Parallel light updates
2021-09-12 10:29:29 -07:00
Jozufozu
075719e75c
Optimize imports
2021-09-12 09:41:45 -07:00
Jozufozu
b75dcb2209
Instancer interface
...
- Entire material/model system finally cleaned up
2021-09-12 09:40:36 -07:00
Jozufozu
99259ff227
Separate LightVolume and GPULightVolume
...
- LightVolumes now can act as a light cache with configurable size
- More GridAlignedBB changes
- Remove ILightUpdateListeners
- Simplify pulley rendering using LightVolume
2021-09-08 15:48:49 -07:00
Jozufozu
dc6a9daeb1
Immutable view of GridAlignedBB
2021-09-04 19:57:32 -07:00
Jozufozu
fe304041c5
Moving light updates
...
- Better system for moving objects that want to receive light updates
- LightProvider interface to better abstract light lookups
- All light listeners use GridAlignedBBs
- More utility in GridAlignedBB
2021-09-04 16:40:40 -07:00
Jozufozu
7ca4ea5c3e
Light update convergence
...
- Move light update logic for all instances to use LightUpdater
- Begin refactor of LightUpdater to account for moving listeners
2021-08-29 14:40:46 -07:00
Jozufozu
cb10e4e7d1
Merge branch 'dev' into next
2021-08-25 13:21:42 -07:00
Jozufozu
0eafe8f453
Merge pull request #36 from MehVahdJukaar/dev
...
Adds 3 parameter scaling function to MatrixTransformStack
2021-08-25 13:20:42 -07:00
Jozufozu
f0f423ca0d
Restore single paramater scale function
...
- Now has default impl in TransformStack
- MatrixTransformStack now only overrides xyz scale
2021-08-25 13:15:29 -07:00
Jozufozu
98b61b884c
Instanced Minecarts
...
- Rotations in PartBuilder
- BlockModels are always UNLIT_MODEL format
2021-08-25 12:53:43 -07:00
MehVahdJukaar
d9c631cfe7
Update TransformStack.java
2021-08-25 21:49:06 +02:00
MehVahdJukaar
b0625ef13e
Update MatrixTransformStack.java
2021-08-25 21:40:35 +02:00
MehVahdJukaar
399fb2a81b
Merge pull request #1 from MehVahdJukaar/MehVahdJukaar-patch-1
...
Add 3 parameter MatrixTransformStack scaling function
2021-08-25 20:23:58 +02:00
MehVahdJukaar
4fbb808832
Added 3 parameter scaling function
...
Simply adds a 3 parameter function to to MatrixTransformStack so a matrix can be scaled on different axis
2021-08-25 20:21:33 +02:00
Jozufozu
7cb81256a1
Interfaces and less log lines
...
- MateralManager, MaterialGroup, and InstanceMaterial are all interfaces
- Separate (T)EI facing API from implementation
- Comment out debug log in ModelPool
2021-08-23 22:34:27 -07:00
Jozufozu
2137f9e46d
Errors and pools
...
- GlException and error checking WIP
- Put all models within a material in a ModelPool
- Instancers directly accept IModels
- ModelPools are very WIP
2021-08-20 15:05:41 -07:00
Jozufozu
f4f6087e08
Storage clean-up
...
- Wrapper for sync objects
- Compat layer for buffer storage
- Don't get persistent buffers if they're not supported
2021-08-14 15:57:52 -07:00
Jozufozu
b9ac4f1fdc
Persistent buffers v1.5
...
- Add new sync function to GlBuffer
2021-08-14 13:33:17 -07:00
Jozufozu
2ab0e221ce
Merge branch 'dev' into shader-pipeline
2021-08-13 16:15:28 -07:00
Jozufozu
f0fc3fffb9
Persistent buffers v1
2021-08-13 16:15:20 -07:00
Jozufozu
b85bf14ad9
Better float array buffering
2021-08-13 13:35:18 -07:00
Jozufozu
11f55d1d56
Random utilities from a messy workspace
...
- More documentation/clean up some old docs
- isFirstLoad check on GatherContextEvent
- Instancers no longer crash on empty model
- setIdentity on MatrixTransformStack
- more utilities for TransformStack
- ModelData "nullification"
2021-08-13 11:23:09 -07:00
Jozufozu
4817ce3fe1
Final loader and temporary ShaderSources
2021-08-10 17:39:11 -07:00
Jozufozu
947c611bbc
Some decoupling
...
- New Loader class in charge of loading and compiling everything
- ShaderSources now only loads sources
- ShaderSources is immutable now
- Resolver singleton in charge of managing name resolutions
- ProgramSpecs go through Resolver
- WorldShaderPipeline no longer needs reference to ShaderSources
2021-08-10 15:20:51 -07:00
Jozufozu
b0c1ebc76f
A heck of a lot
...
- Reorganize everything
- Isolate SourceFile related things
- Should consider decoupling ShaderLoader from resource loading
- Document a lot of newer things
- Index functions
- Awkward WorldContext builder
- Template responsible for providing shader inputs
- Template is now an abstract class
- Template provides GLSL version
- ProgramSpecs now only accept one file
2021-08-10 02:06:22 -07:00
Jozufozu
392cfc9156
Reload
...
- Redo shader loading
- Now loads an immutable SourceFile containing some metadata
- Replace legacy compilation pipeline with improved new one using new api
- Builtins are defined in one file, now "header"
- New ErrorReporter/ErrorBuilder methods
- Fancier shader loading errors
2021-08-08 22:33:32 -07:00
Jozufozu
9ea3344b6f
Merge branch 'dev' into shader-pipeline
2021-08-08 17:07:33 -07:00
Jozufozu
3c52a2cc53
Missed changelog line
2021-08-08 17:06:50 -07:00
Jozufozu
1f2399236f
Almost there
...
- WorldContext sort of uses a shader pipeline interface
- Smarter import resolution
- Reorganize shader sources
- Rewritten shader templating
- Still need builtin support
2021-08-07 01:00:32 -07:00
Jozufozu
f8ac5166c8
More LightVolume guards
...
- Should fix odd crash
2021-08-06 12:55:56 -07:00
Jozufozu
f9de5f4721
Merge branch 'dev' into shader-pipeline
2021-08-06 11:45:39 -07:00
Jozufozu
38b848624d
Whoops remove that import
2021-08-05 15:05:47 -07:00
Jozufozu
35c33e9150
Bump version - 0.2.3
2021-08-05 14:55:07 -07:00
Jozufozu
931b4a33ae
Event adjustments to work with optifine shadows
2021-08-05 14:53:22 -07:00
Jozufozu
a35c7150c2
More steps towards actually using the new loader
2021-08-05 12:16:17 -07:00
Jozufozu
9e699b7715
Merge branch 'dev' into shader-pipeline
2021-08-05 00:53:29 -07:00
Jozufozu
894350efec
Bump version - 0.2.2
2021-08-04 22:44:21 -07:00
Jozufozu
cda66c0ad8
Fix #23
...
- Clamp update divisor
2021-08-04 20:50:37 -07:00
Jozufozu
16e8eec6ab
Fix nullpointer in ModelRenderer
...
- Somehow managed to only do a check in a subclass
- Add #empty() helper method to IModel
2021-08-04 14:35:16 -07:00