Commit graph

2357 commits

Author SHA1 Message Date
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
f370e85d6d Increment version 2023-01-13 16:08:32 -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
Jozufozu
23c0ef6f33
Update changelog.txt 2022-12-14 09:16:21 -08:00
PepperCode1
27f2181752
Merge pull request #162 from marchermans/1.18/dev
Switch to the block vertex format for instancing
2022-12-08 15:05:16 -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
e78158925e Update Loom, Loader, Fabric API 2022-11-10 20:59:12 -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
36140623d3 Include new versions in bug report template 2022-09-28 20:05:41 -07: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
418672c065 Final fix-ups
- Revert mods.toml version to ${file.jarVersion}
- Fix license not being added to built jars
- Rename LICENCE.md to LICENSE.md
2022-07-15 19:29:42 -07:00
PepperCode1
17d8688fd7 Fix mixins sometimes not remapping
- Compress logo image
2022-07-15 09:42:14 -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
0a671b8f43 Update changelog and bug report template 2022-07-11 20:55:01 -04:00
Jozufozu
d9cdd361cd One line update
- Add modrinth updateJSONURL
2022-07-11 14:36:54 -04: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
Jozufozu
f058b37b13
Update changelog.txt 2022-07-08 12:37:54 -07: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
Jozufozu
ec8b831917 Update changelog, make bug report template loader agnostic 2022-04-06 11:51:59 -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