Commit graph

1954 commits

Author SHA1 Message Date
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
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
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
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
Jozsef
3f03d1f071 Fix else formatting 2021-06-30 13:03:02 -07:00
Jozsef
33cdfb2ae9 Merge branch 'dev' into shader-pipeline
# Conflicts:
#	src/main/java/com/jozufozu/flywheel/backend/ShaderSources.java
2021-06-30 12:58:21 -07:00
Jozsef
f615825846 Pre-port tasks I
- 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!
2021-06-30 12:43:54 -07:00
Jozsef
70b58c2838 More fun parsing stuff
- Start loading things via ShaderSources
 - More Span functionality
 - Parse function arguments
2021-06-30 11:42:33 -07:00
JozsefA
5b63d36ab0 Merge branch 'dev' into shader-pipeline 2021-06-27 18:50:38 -07:00
JozsefA
f89673a79e Reset StitchedSprites when the atlas is stitched
- Might fix simi's slime issue
2021-06-26 16:05:15 -07:00
JozsefA
68712430eb Merge branch 'dev' into shader-pipeline 2021-06-26 13:07:27 -07:00
JozsefA
9e983562b8 Always dispatch render layer events 2021-06-26 13:05:21 -07:00
JozsefA
2325db4cdf Start work on shader pipeline system
- Unbulit, untested so far
 - Will ultimately supersede shader contexts/templating
 - Laying framework for better compile errors via Span.java
2021-06-25 18:01:50 -07:00
JozsefA
195a7348f3 Instanced entities are compatible with optifine
- Fix mixin related crash on startup
 - Change defaultRequire to 0
2021-06-24 19:37:31 -07:00
JozsefA
c58674d678 Comment out debug line 2021-06-24 14:21:19 -07:00
JozsefA
de8e324d32 Change behavior of tagged struct parsing in shaders
- 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)
2021-06-24 14:20:24 -07:00
JozsefA
f8e05d7f8a Fix complaint about an unknown custom packet identifier 2021-06-24 10:42:25 -07:00
JozsefA
5c1f186264 Fix crash on resource reload
- Properly delete MaterialManagers and ShaderContexts
 - Reload renderers on resource reload
 - More utility methods in WorldAttached
2021-06-24 01:20:03 -07:00
JozsefA
2bde33af00 Cleanup flywheel event listeners, fix crash on server startup 2021-06-23 13:19:03 -07:00
JozsefA
78611b0038 Print final shader source on compilation error 2021-06-23 09:08:34 -07:00
JozsefA
6b67e3d55d Add fabulous depth fix 2021-06-22 20:06:00 -07:00
JozsefA
9565a679be Little tweaks and add the logo to mods.toml 2021-06-19 16:52:23 -07:00
JozsefA
96670f3276 Commands, config, and a logo
- 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!)
2021-06-18 22:52:33 -07:00
JozsefA
3a82535e2d Nuke mod class 2021-06-16 13:03:40 -07:00
JozsefA
7dd19fb99e Update mods.toml 2021-06-16 12:57:52 -07:00
JozsefA
3c6de355e8 Add licence 2021-06-16 11:58:17 -07:00
JozsefA
7b427e3c92 Yeet 2021-06-16 11:19:33 -07:00
JozsefA
d612cfdd34 Merge remote-tracking branch 'origin/mc1.16/dev' into chromatic-projector 2021-06-11 10:31:18 -07:00
JozsefA
c1dadf3860 Instance managers are abstract 2021-06-10 14:34:16 -07:00
reidbhuntley
5bd0c73f45 Flipping pipes
- Pipes not connected to anything will no longer change direction when a non-connective block is placed next to them
2021-06-10 17:12:45 -04:00
simibubi
1b5ede1a5d main menu title
- Added new logo to the Create menu screen
2021-06-10 20:32:17 +02:00
simibubi
1f48c698e8 ITE refactor 2021-06-09 23:48:34 +02:00
simibubi
2852756a68 Deny ProcessingInventories from Mounted Storage 2021-06-09 17:16:10 +02:00
simibubi
971ce29b6a Skip.
- Config UI automatically skips to the layer of config where multiple options are available
- Removed range tooltips
- Config entries in UI list are now sorted by name, with config groups at priority
2021-06-09 16:53:54 +02:00
simibubi
169669680b Colour shift
- Switched to a more readable text colour for the config ui
- Slight tweaks to ponder button colours as well
- Replaced discord link with project page
2021-06-09 16:17:29 +02:00
simibubi
7fae3e4968 Promp
- Changed the layout of save/discard/leave prompts
- Leaving with unsaved changes now gives you the option to save
- Config tooltips now use standard Create tooltip splitting
2021-06-09 13:52:52 +02:00
JozsefA
b4a1fbf2c7 Instanced entities are lit 2021-06-09 00:26:54 -07:00
reidbhuntley
911aec5a3f Gave stockpile switch output a delay (like comparators have) to improve stability 2021-06-08 22:06:34 -04:00
simibubi
212cd593a7 Create menu, Part I
- Added an intermediate menu screen for in-game links and configs
- Couple slight tweaks to config UI
2021-06-09 02:17:32 +02:00
Kryppers
3372947c75 Wrench UV fix 2021-06-08 11:03:06 +01:00
JozsefA
1ce141850b Merge remote-tracking branch 'origin/chromatic-projector' into mc1.16/chromatic-projector 2021-06-07 18:24:25 -07:00
JozsefA
9cc03a81d7 Instanced entities stage 1 2021-06-07 18:12:46 -07:00
PepperCode1
3c84087f15 Fix saw and PSI diffuse
- Fix saw and portable storage/fluid interface diffuse lighting
- Remove "disableDiffuseTransform" option from SuperByteBuffer
- Switch argument order in RenderedContraption constructor to be consistent with superclass (ContraptionWorldHolder)
2021-06-07 16:14:51 -07:00
JozsefA
285b8f98cf Instanced entities stage 0 2021-06-07 02:43:36 -07:00
JozsefA
d47f898c76 Move away from a static backend class, add a registration event 2021-06-06 15:46:16 -07:00
reidbhuntley
12bfc78443 Bundle o' bugfixes
- Fix Extendo Grip not applying extended reach when equipped on rejoin
- Fix mechanical crafters duping + dropping their items when added to minecart contraption
- Fix Wand of Symmetry duping rails under placed cart assemblers
- Lecterns now keep NBT when moved by contraption
- Super glue entities hanging on positions above build limit now get removed
- Fix harvester replanting sweet berry bushes in wrong state
- Cuckoo clock and clockwork bearing now go crazy in unnatural dimensions
2021-06-06 16:59:15 -04:00
reidbhuntley
c97da3868f Prevent AgriCraft/InfinityLib crash 2021-06-05 16:14:16 -04:00
PepperBell
823520e047 Improve handling of dyed blocks
- Create DyedBlockList for storing and accessing a set of dyed blocks
- Switch usage of BlockEntry<?>[] to DyedBlockList in AllBlocks
- These changes also finally fix the compilation error related to generic arrays
2021-06-05 10:43:16 -07:00
reidbhuntley
fec329e3d2 Make deployer check for consumed actions too 2021-06-05 12:29:56 -04:00
reidbhuntley
dff459a75f Fix bad behavior with small-max-stack-sized items when extracting multiple items at once 2021-06-05 12:29:56 -04:00
PepperBell
16cf6a44de Fix ponder typo
- Fix "exacly" typo in adjustable chain gearshift ponder scene
- Resolves #1718
2021-06-04 21:53:04 -07:00
PepperBell
2bada365b3 Registrate colors and organized item rendering
- Use Registrate's block and item color registration instead of running
the events manually
- Move utility color handler methods to foundation.utility
- Move all item rendering classes to foundation.item.render
- Move IBlockVertexColor from foundation.block to
foundation.block.render
- Remove unnecessary raw cast in CreateRegistrate
2021-06-04 21:26:25 -07:00
JozsefA
457fff78f3 Mostly untangle the loading functions, enforce triangles 2021-06-04 17:55:05 -07:00
JozsefA
9bac709dfd Event system, sort of untangle backend 2021-06-04 15:56:46 -07:00
JozsefA
bef6d77a59 Start working on instanced enti- oh wait I've got to do all this other stuff first
- 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
2021-06-03 21:23:06 -07:00
Kryppers
cecf2102cf Back to the blueprints 2021-06-03 19:42:30 +01:00
simibubi
032fa90ec6 Click to Craft
- Added Crafting Blueprints
- Bit of "Ghost-item" Container refactoring
2021-06-03 01:03:43 +02:00
JozsefA
d7ed765dde Debug text 2021-06-01 13:47:38 -07:00
JozsefA
59dd21b85a Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/chromatic-projector
# Conflicts:
#	src/main/java/com/simibubi/create/AllContainerTypes.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/AbstractContraptionEntity.java
2021-06-01 11:47:15 -07:00
JozsefA
c4b828ba56 Allocate no more than 3 quad->triangle EBOs ever. 2021-05-31 14:58:49 -07:00
simibubi
8fe3901c98 Remove leftover debug call 2021-05-31 22:48:45 +02:00
JozsefA
a526156440 Move a package 2021-05-31 12:51:11 -07:00
reidbhuntley
53ba59c082
Improve stability of sequenced gearshift (esp. for rotations) (#1695) 2021-05-31 15:42:12 -04:00
simibubi
a9ced3fea2 SoundScapes, Part IV
- Fixed diving helmet activating when wielder is only partially submerged in water
- Fixed diving helmet activating for players in creative mode
- Added sounds for the Mechanical Saw
- Added clicking sounds for the Linked Controller
- Gantry contraptions now make contraption noises
- Soundscapes now lower their volume based on the distance between listener and center of noise
2021-05-31 20:48:22 +02:00
simibubi
1532d9e4f6
Merge pull request #1684 from PepperCode1/mc1.16/cobblestone-drops
Cobblestone Drops and Smelting
2021-05-31 16:29:10 +02:00
simibubi
616a515939
Merge pull request #1680 from reidbhuntley/bugfix
More bug fixes
2021-05-31 16:25:37 +02:00
JozsefA
8fab6c4643 Instance triangles 2021-05-30 22:16:03 -07:00
JozsefA
3500b4ec87 Contraption triangles 2021-05-30 20:53:08 -07:00
JozsefA
2300ef2088 Organization, renaming, and fixing a dumb crash 2021-05-30 17:05:41 -07:00
reidbhuntley
a633bc47be Actually, we should prevent all updates caused by SchematicWorld 2021-05-30 14:36:06 -04:00
reidbhuntley
b890204f44 Fix schematic init crash caused by updating null ChunkSections 2021-05-30 01:40:24 -04:00
reidbhuntley
2bedc94bc6 Fix schematic deployment crash caused by some Mekanism blocks 2021-05-29 22:09:58 -04:00
PepperBell
c013345860 Cobblestone drops and smelting
- Make regular palette stone blocks drop their cobblestone variant instead of themselves (unless silk touch is used)
- Add smelting recipes for cobblestone palette blocks
- Rename PaletteBlockPatterns to PaletteBlockPattern
- Move PatternNameType to PaletteBlockPattern
- Rename some fields
2021-05-29 16:31:36 -07:00
reidbhuntley
51c0e347b8 Fix chest minecarts clearing their inventory when disassembled 2021-05-29 15:17:24 -04:00
PepperBell
9235aa93ba JEI Fixes
- Fix #1661: blasting-only recipes would not be shown under the bulk blasting category
- Add ability to remove matching recipes by type while using the category builder
- Fix fan catalyst items being italicized
- Add and tweak some visibility modifiers
2021-05-28 23:10:12 -07:00
reidbhuntley
55abcde5d5 Allow block breakers to work at center of bearing 2021-05-28 23:27:44 -04:00
reidbhuntley
0aaa09260b Fix minecart coupling item dupe 2021-05-28 14:42:47 -04:00
zelophed
5975a3cbac Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev 2021-05-28 14:42:39 +02:00
zelophed
975d898ac6 all the configs
- make it easier for addon devs to hook into create's config ui
- change the config command to allow for:
  - opening any mod's registered config
  - changing single values at a time

- possibly solve incompatibility with CalemiUtils mod and placement helpers
2021-05-28 14:42:27 +02:00