PepperCode1
95cf9dbe78
Merge remote-tracking branch 'origin/1.18/dev' into 1.18/fabric/dev
...
Conflicts:
build.gradle
gradle.properties
src/main/java/com/jozufozu/flywheel/core/model/BakedModelBuilder.java
src/main/java/com/jozufozu/flywheel/core/model/ModelUtil.java
src/main/java/com/jozufozu/flywheel/core/model/ShadeSeparatedBufferBuilder.java
src/main/java/com/jozufozu/flywheel/core/model/WorldModelBuilder.java
src/main/java/com/jozufozu/flywheel/core/vertex/BlockVertex.java
2023-07-07 11:46:29 -06:00
PepperCode1
e79f6bcbf6
Fix poor design choices resulting in memory leaks
...
- Add ShadeSeparatedBufferedData which is returned by buffering
utilities and can be released
- Remove ShadeSeparatedBufferBuilder and add ModelUtil#endAndCombine
- Add VertexList#delete
- Replace all usage of MemoryTracker with MemoryUtil
- Add FlwUtil#copyBuffer
- Turn most BlockModel constructors into static methods
- Add BakedModelBuilder#toModel
2023-07-03 13:19:37 -07:00
PepperCode1
873facfd34
Fix crumbling
...
- Use vanilla's approach of determining crumbling UVs from vertex
positions instead of scaling existing UVs
- Bump version
- Update buildscript and Gradle
2023-06-26 18:55:00 -07:00
PepperCode1
7abc292568
Implement RenderAttachedBlockView on VirtualEmptyBlockGetter
2023-02-22 13:07:50 -08:00
PepperCode1
09ea5c480d
Do not enforce Semver
2023-01-26 15:04:07 -08:00
PepperCode1
59c11949e8
Merge remote-tracking branch 'origin/1.18/dev' into 1.18/fabric/dev
...
Conflicts:
src/main/resources/META-INF/mods.toml
2023-01-26 11:17:06 -08:00
PepperCode1
83a5723420
Fix IndexedModel allocating incorrect amount of bytes
...
- model.size() returned the byte size relative to the model's
VertexType, but the byte size relative to the passed VertexType is
needed instead
2022-12-31 14:34:59 -08:00
PepperCode1
99f43ef6eb
Merge remote-tracking branch 'origin/1.18/dev' into 1.18/fabric/dev
2022-12-27 15:22:05 -08:00
Marc Hermans
e04ae88073
Switch to the block vertex format.
2022-12-01 21:24:11 +01:00
PepperCode1
f56d0f9024
Models are (actually) temporary
...
- Call Model#delete on instancer delete
- Add constraint to modelSupplier in Material#model
- Fix memory leak in ModelPart
- Add ArrayModelRenderer#getModel
2022-11-22 13:04:03 -08:00
PepperCode1
7c757fee80
Merge remote-tracking branch 'origin/1.18/dev' into 1.18/fabric/dev
...
Conflicts:
build.gradle
gradle.properties
src/main/java/com/jozufozu/flywheel/core/QuadConverter.java
src/main/java/com/jozufozu/flywheel/core/crumbling/CrumblingRenderer.java
src/main/java/com/jozufozu/flywheel/core/vertex/BlockVertexList.java
src/main/java/com/jozufozu/flywheel/event/ForgeEvents.java
src/main/java/com/jozufozu/flywheel/mixin/ChunkRebuildHooksMixin.java
src/main/java/com/jozufozu/flywheel/mixin/InstanceAddMixin.java
src/main/java/com/jozufozu/flywheel/mixin/LevelRendererMixin.java
2022-11-10 18:05:46 -08:00
PepperCode1
f6d5ed01e7
A bit of backporting
...
- Backport general changes from 1.19
- Fix Javadoc of PartialModel
- Remove default Model#getType implementation
- Increment version to 0.6.8
- Update Parchment
2022-11-10 16:30:30 -08:00
PepperCode1
e328a270e2
Models are temporary
...
- Add Model.delete
- Allow BlockModel.createEBO to be called more than once for a single
instance
- Clear cache on QuadConverter.delete
2022-11-10 12:43:26 -08:00
Jozufozu
72a05ad35d
State your state
...
- Address a few bugs with rubidium
- Ignore EBOs when restoring state
- ElementBuffer deals in raw gl handles
- Document all state changes/restores/resets
Co-authored-by: PepperCode1 <44146161+peppercode1@users.noreply.github.com>
2022-11-10 12:39:01 -08:00
PepperCode1
098cb3ee70
Porting from all directions
...
- Diagonal-port restore state changes from 1.18/next
- Back-port buffer uploader changes and RenderLayerEvent dispatch point
change from 1.19/dev
- Make CrumblingRenderer return earlier if there is nothing to render
- Bump version
2022-09-21 15:34:58 -07:00
Jozufozu
cab7aff9c3
Fresh loaded entities here!
...
- Remove loaded chunk check from entity instance manager
2022-09-06 08:49:48 -07:00
PepperCode1
832c94f2ba
Lazily instantiate DrawBuffers
...
- Iris/Oculus create wrapper RenderTypes whose DrawBuffers are never
used. Creating the DrawBuffer on retrieval solves this inefficiency.
- Add 1.18.2 as a Minecraft version to the issue template
2022-08-16 10:41:35 -07:00
PepperCode1
70616d381a
Fix crash with Rubidium when using batching
...
- Backport fix from 1.18/next
- Downgrade and lock ForgeGradle version to fix build
- Update Forge to match 1.18/next
- Bump version
2022-08-13 13:54:52 -07:00
PepperCode1
c2b78f8e0e
Fix BakedModelBuilder not wrapping models
2022-07-20 08:51:50 -07:00
PepperCode1
7e3671fa9a
Wrap vanilla models for shade separation
...
- Flywheel version of Fabricators-of-Create/Create#441
2022-07-18 10:06:16 -07:00
PepperCode1
473b1af5c6
Merge remote-tracking branch 'origin/1.18/dev' into 1.18/fabric/dev
...
Conflicts:
build.gradle
gradle.properties
src/main/java/com/jozufozu/flywheel/Flywheel.java
src/main/java/com/jozufozu/flywheel/backend/Backend.java
src/main/java/com/jozufozu/flywheel/backend/instancing/batching/BatchedMaterialGroup.java
src/main/java/com/jozufozu/flywheel/config/FlwCommands.java
src/main/java/com/jozufozu/flywheel/core/model/ModelUtil.java
src/main/java/com/jozufozu/flywheel/core/vertex/BlockVertexList.java
src/main/java/com/jozufozu/flywheel/mixin/FrustumMixin.java
src/main/resources/META-INF/mods.toml
2022-07-16 21:00:15 -07:00
PepperCode1
a42c027b6f
Scheme-a-version
...
- Fix Resources not being closed properly
- Change versioning scheme to match Create
- Add LICENSE to built jar
- Fix mods.toml version sync
- Move JOML code to non-src directory
- Update Gradle
- Organize imports
2022-07-15 00:00:54 -07:00
Jozufozu
f01e169954
Reading copy
...
- All vertex lists extend from AbstractVertexList, which handles copying the input
2022-07-11 14:08:07 -04:00
Jozufozu
faa5652c4c
World building exercise
...
- Yoink the WorldModelBuilder and associated changes from 1.18/next
2022-07-10 19:04:30 -04:00
Jozufozu
273c99619f
Oculus compatibility
...
- Rename OptifineHandler to ShadersModHandler
- Rename functions to match fabric version
2022-07-10 18:08:59 -04:00
Jozufozu
c3b1a43beb
One more thing...
...
- Missed a level param in LightVolume
- Public removeAndMark
- Remove batching warning
- Bump forge and parchment builds
2022-07-10 15:22:02 -04:00
Jozufozu
055802160f
Update light updates
...
- ... to address the nullpointer with create pulleys
- LightListeners track their own levels
- Remove BasicProvider and LightProvider
- Rename MovingListener to better match functionality
- Remove ListenerStatus in favor of a boolean
- Instances keep track of their removal status and properly report it via LightListener#isListenerInvalid
- Bump version - 0.6.4
2022-07-09 13:25:24 -04:00
PepperCode1
e0aa5dd7ce
Merge remote-tracking branch 'origin/1.18/dev' into 1.18/fabric/dev
...
Conflicts:
.github/ISSUE_TEMPLATE/bug_report.yml
build.gradle
src/main/java/com/jozufozu/flywheel/Flywheel.java
src/main/java/com/jozufozu/flywheel/config/FlwCommands.java
src/main/java/com/jozufozu/flywheel/config/FlwConfig.java
2022-06-30 19:38:14 -07:00
Jozufozu
e26195169f
Closing the blinds
...
- Prevent LightUpdater from interacting with invalid levels.
- Bump version - 0.6.3
2022-06-22 13:29:28 -07:00
Jozufozu
af11d1e78b
Fix spooky shaded contraptions
...
- Logic error in GPULightVolume#move
- Race condition from LightUpdater showing up in LightVolume#initialize
2022-04-08 17:23:02 -07:00
Jozufozu
9a69ed1906
Layoff some workers
...
- Only one task engine for everything now
- Fixes crash on LightUpdater init when Flywheel is off
- Attempt to wrangle InstanceWorld init code
- Misc. cleanup/renaming
2022-04-07 14:19:36 -07:00
Jozufozu
19d757d702
Moving in parallel
...
- LightUpdates now uses task engine to update listeners in parallel
- Basic workgroup system to run something on the main thread after a group of tasks is complete
2022-04-07 13:23:56 -07:00
Jozufozu
e3ceacd6e4
Contraptions were too lit
...
- Fix bug causing potentially moving contraptions to re-upload their light every tick
- Reduces tick stutter with large amounts of contraptions
2022-04-07 13:23:56 -07:00
Jozufozu
eb5d3c4b25
Model allocators are passed on init instead of stored
2022-04-07 13:23:56 -07:00
PepperCode1
a6d0dd8a39
Merge remote-tracking branch 'origin/1.18/dev' into 1.18/fabric/dev
...
Conflicts:
gradle.properties
src/main/java/com/jozufozu/flywheel/Flywheel.java
src/main/resources/META-INF/mods.toml
2022-03-14 11:22:58 -07:00
PepperCode1
a419eab484
Update to 1.18.2
...
- Switch to SLF4J logging
- Bump version
- Add 0.6.1 changelog
2022-03-14 10:52:28 -07:00
PepperCode1
3d24002aac
Fix display test
...
- Improve version retrieval
- Fix extra description newline
2022-03-12 14:24:15 -08:00
PepperCode1
f5b15f3dff
Merge remote-tracking branch 'origin/1.18/dev' into 1.18/fabric/dev
...
Conflicts:
src/main/java/com/jozufozu/flywheel/core/model/ModelUtil.java
src/main/java/com/jozufozu/flywheel/core/vertex/BlockVertex.java
src/main/java/com/jozufozu/flywheel/core/vertex/BlockVertexList.java
src/main/java/com/jozufozu/flywheel/util/RenderMath.java
2022-02-21 15:28:26 -08:00
PepperCode1
0c74be53f6
Add partial support for non-shaded quads
...
- Add ShadeSeparatedBufferBuilder and other code to allow separating all
non-shaded vertices to the end of the buffer
- Add ShadedVertexList to allow defining if a certain vertex is shaded
or not
- Add new methods to ModelUtil with arguments for more flexibility
- Refactor VirtualEmptyBlockGetter to allow defining arbitrary light
values
- Add shaded argument to DiffuseLightCalculator
2022-02-18 20:39:19 -08:00
Jozufozu
52f66dec9d
Move diffuse declaration to vertex compiler
2022-02-14 20:45:13 -08:00
Jozufozu
20a75321e2
Fix occasional crash when flywheel objects are loaded in
2022-02-14 20:36:35 -08:00
PepperCode1
9cc6523368
Merge remote-tracking branch 'origin/1.18/dev' into 1.18/fabric/dev
...
Conflicts:
build.gradle
src/main/java/com/jozufozu/flywheel/backend/Backend.java
src/main/java/com/jozufozu/flywheel/backend/OptifineHandler.java
src/main/java/com/jozufozu/flywheel/backend/instancing/batching/BatchedMaterialGroup.java
src/main/java/com/jozufozu/flywheel/core/model/ModelTransformer.java
src/main/java/com/jozufozu/flywheel/core/model/ModelUtil.java
src/main/java/com/jozufozu/flywheel/util/RenderMath.java
2022-02-12 21:38:01 -08:00
Jozufozu
c07c6363f9
Resolve redirect conflict and add more optifine hacks
...
- Fix entitiesForRendering redirect to be compatible with carpet.
- Use more reflection for dealing with optifine
- Fixes issue where flywheel would still be on immediately after enabling optifine shaders
2022-02-10 21:26:56 -08:00
PepperCode1
7515cc74f7
Remove force diffuse
...
- The batching engine may run in parallel, meaning the force diffuse
state will not be read correctly
- ModelTransformers only process vertices that will be rendered in the
world
- Add 0.6.1 to the issue template
2022-02-08 21:37:09 -08:00
PepperCode1
f24c1fafba
Add, refactor, remove
...
- Add DiffuseLightCalculator
- Add ModelUtil.VANILLA_RENDERER for consistent virtual rendering
- Refactor OptifineHandler
- Remove MatrixTransformStack
2022-02-08 19:26:36 -08:00
PepperCode1
59c4ac3cb8
Fix and optimize model hacks
...
- Remove isVanillaAdapter check from CullingBakingModel.wrap
- Optimize model wrapping in ModelUtil.getBufferBuilderFromTemplate
2022-02-06 16:28:33 -08:00
PepperCode1
2b5e71e172
Fix Sodium mixin not being remapped in prod
2022-02-06 12:38:47 -08:00
Jozufozu
ae5853442b
Small utility functions
2022-02-06 00:55:49 -08:00
IMS
bbc5cc60bf
Fix Sodium block entity support ( #108 )
...
* Fix Sodium block entity support
* Fix production remapping
* Make sodium modCompileOnly
* Finalize Sodium compatibility
- Improve mixin to redirect getting of renderer instead of adding of
block entity
- Move mixins from mixin.sodium to fabric.mixin.sodium
- Remove Joml dependency
Co-authored-by: PepperCode1 <44146161+PepperCode1@users.noreply.github.com>
2022-02-03 19:49:24 -08:00
PepperCode1
e48ecccf32
Improve Iris compatibility
...
- Use config-based areShadersEnabled when choosing the engine
2022-02-03 17:12:50 -08:00