Commit graph

2290 commits

Author SHA1 Message Date
Jozufozu
5cb2eef157 Method to invalidate contraption renderers
- Call ContraptionRenderDispatcher#invalidate, at some point during a tick, and the structure will be reset.
 - Move contraption compartment to SBBContraptionManager
 - Contraption compartment uses custom pair with better hash function instead of apache commons pair
2021-08-15 15:10:35 -07:00
Jozufozu
322902d056 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:52 -07:00
Jozufozu
208c6eff89 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:23 -07:00
Jozufozu
cb47ca8452 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:35:27 -07:00
simibubi
5555f9e6bb Those don't mix
- Fixed 3x3 compacting recipes marked as Shapeless able to be processed by a mixer
2021-08-08 19:37:04 +02:00
simibubi
62f65e832a Give Widget 2021-08-08 16:26:44 +02:00
simibubi
45de01ff9e Attack of the remap, Part III
- Fixed Chute Particles not moving
2021-08-08 14:41:41 +02:00
PepperBell
019a61c444 Expose ponder instruction addition 2021-08-07 21:10:38 -07:00
PepperBell
67a7726f1c Ponder registration refactor
- Remove utility methods from PonderRegistry and only leave the one
essential method
- Move utility registration methods to PonderRegistrationHelper
- Move entry builder methods to entry class, PonderStoryBoardEntry
- Move listed tags list to tag registry
- Make ponder chapters namespaced
- Add localization and language datagen support for ponder chapters
2021-08-07 20:18:45 -07:00
simibubi
8edb9121cc Outstanding Performance
- Fixed Chutes pulling from inventories causing major framerate drops
- Fixed Chutes sending update packets when idling
- Added a max range for filter slot rendering of blocks
- Synced TEs are no longer able to cause side-effects by calling sendData on the Render Thread
2021-08-07 16:24:57 +02:00
zelophed
cc575a70c8 flash mich nochmal
- fix ponder buttons not flashing correctly
2021-08-07 02:46:16 +02:00
zelophed
370c813287 lost in the depths
- add a search box to config screens
- add a new screen that gives easier access to other mod's configs
- add a couple more config annotations
2021-08-07 02:09:12 +02:00
zelophed
ca02ac038f Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev
# Conflicts:
#	src/main/java/com/simibubi/create/foundation/ponder/SceneBuilder.java
2021-08-07 01:23:43 +02:00
Jozufozu
085ab2d7bc Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev 2021-08-06 12:14:13 -07:00
Jozufozu
0349d57929 Fix CI
- Javadoc doesn't like angle brackets
 - Add jar to artifacts
2021-08-06 12:13:51 -07:00
PepperBell
b19d92f6c2 Remove legacy TER light code
- TERs now pass in the light, so no need to recalculate it
- Make ContraptionRenderInfo.matrices final
2021-08-05 22:35:24 -07:00
PepperBell
333ef9ecbb Reuse contraption matrices
- Optimize memory usage by reusing ContraptionMatrices instances
2021-08-05 17:48:35 -07:00
Jozufozu
26fbe97ae6 Fix contraption shadow rendering with optifine
- More conventional naming for fields of ContraptionMatrices
 - Encapsulate fields in ContraptionMatrices
 - Move creation to RenderLayerEvent
 - De-clutter RenderedContraption#beginFrame
 - Bump flywheel version
2021-08-05 15:09:00 -07:00
Jozufozu
e7c7669d7f Setup build script for maven 2021-08-05 15:09:00 -07:00
Jozufozu
3e6e8c406b Bump Flywheel version
- Small tweak to contraption layer creation
2021-08-05 15:09:00 -07:00
PepperBell
b81fc66145 Sandpaper tag improvements
- Use already created sandpaper tag
- Use previous recipe's namespace instead of Create's when converting
sandpaper recipes to deployer recipes
2021-08-05 10:23:59 -07:00
simibubi
9f558cf419 Not a magic mod
- Fixed Auto-Compacting picking up special gated recipes from the mod Occultism #2070
2021-08-05 19:11:13 +02:00
simibubi
a6f893da7e
Merge pull request #2080 from mrh0/mc1.16/dev
Added tag for improved integration in DeployerApplicationRecipe
2021-08-05 17:58:42 +02:00
simibubi
8dd2f1dbf6 Schematic Problematic
- Fixed ammo-specific fire damage not dropping cooked drops from killed entities
- Fixed Schematicannons not visually aiming toward current block trajectory
- Fixed placed Schematics using smaller boundaries than the original
- Added the option to enable/disable placing air blocks with instant creative schematic printing
- Added safety check for Missing/Migrated filter attributes #2065
- Added safety check for Crushing wheels near unloaded blocks
- Added safety check for instant printing an invalid Schematic
2021-08-05 17:05:13 +02:00
MRH0
e8a6500434 Added tag for improved integration in DeployerApplicationRecipe
+ Added create:sandpaper to AllRecipeTypes and datagen.
~ Changed hardcoded list of sandpaper items to Tag.
This would enable me to include the Diamond Grit Sandpaper from CC&A in the deployer recipe. Node: There might be more applications for this tag.
2021-08-04 02:20:40 +02:00
Jozufozu
468435e1a0 Fix nullpointer when contraptions stop 2021-08-02 00:22:50 -07:00
PepperBell
c674b5df8d Fix linked controller rendering
- Fix unequip animation
- Fix button progress not resetting on unequip
- Optimize code
2021-07-31 19:10:17 -07:00
PepperBell
99be93e8a6 Synchronization
- Make PonderRegistry use a ThreadLocal current namespace
- Add synchronized blocks to some methods that modify maps or lists
- Move some non-thread safe method calls to the event.enqueueWork
lambdas
2021-07-31 17:28:41 -07:00
zelophed
e26d7d61f2 Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev 2021-07-31 14:25:09 +02:00
zelophed
0fe3230640 color me surprised
- move functionality of ColorHelper into a new Color class
- replace usage of java.awt.Color with our own color in most cases
2021-07-31 14:21:19 +02:00
simibubi
296b302160 Attack of the remap, Part II
- Fixed Crafting Blueprints not able to be placed
2021-07-31 14:13:29 +02:00
simibubi
05d581c779 Blinding transparency
- Fixed goggle overlay fading into a solid colour when its custom alpha is 0
- Fixed crash rendering saws, addresses #2064
2021-07-31 12:24:28 +02:00
simibubi
2535ecb917 Attack of the remap
- Fixed two ObfucationHelper lookups
2021-07-30 21:51:05 +02:00
PepperBell
5862e01981 Update Registrate, Flywheel, and JEI 2021-07-30 12:48:38 -07:00
PepperBell
0d7f486107 Update fluids
- Update Registrate from 1.0.4 to 1.0.9
- Remove unnecessary manual bucket creation in fluid builders
- Set more realistic fluid viscosities; Fix #2010
2021-07-29 18:49:04 -07:00
Jozufozu
e1248e598a Model changes
- Buffered models directly consume IModels
 - Document IModel more
 - Move contraption world render spoofing to flywheel
 - Miscellaneous new RenderMaths
 - Added WorldModel, renders many blocks given a world instance
 - Fix broken transparency on contraptions when using Flywheel
2021-07-29 01:37:48 -07:00
Jozufozu
7c202ed491 DRY contraption rendering
- Different subclasses for flywheel rendering and sbb rendering
 - Select which to use on renderer reload, gather context, and when create buffers are invalidated
2021-07-28 19:25:25 -07:00
Jozufozu
cd9f18a8c9 WorldAttached contraption rendering
- ContraptionRenderDispatcher's meat was moved to WorldContraptions
 - Rename ContraptionWorldHolder to ContraptionRenderInfo
 - One ContraptionMatrices per contraption per frame
 - Cull contraptions
 - Bump flywheel version
2021-07-28 18:21:07 -07:00
Jozufozu
ce2e2be2c2 Less world holders when using Flywheel 2021-07-28 15:27:11 -07:00
Jozufozu
17421df5ce Contraptions have l a y e r s
- SBB contraption rendering is done through Flywheel's RenderLayerEvent
 - Fix instanced tile rendering on contraptions and in ponder worlds
 - Bump flywheel version
 - Some package-info.javas
2021-07-28 14:25:50 -07:00
PepperBell
b31f5f5d78 Default fallback
- Make stress value getters fallback to default value map if provider is
absent
- Rename StressConfigDefaults to BlockStressDefaults and move to block
package
- Rename StressConfigValues to BlockStressValues and move to block
package
2021-07-27 16:13:50 -07:00
PepperBell
0dea880665 Stress config value refactor
- Add StressConfigValues to allow registering stress value providers and
getting values by namespace
- Use correct namespace inside StressConfigDefaults builder transformers
- Expose StressConfigDefaults maps
- Add methods to manually register default stress values
- Only add stress configs for defaults that have the create namespace
- Clean up ItemDescription#getKineticStats
2021-07-27 13:25:16 -07:00
simibubi
85be4be395 OK Goggle
- Press/Spout placement offset no longer activates when clicking the side of a block
- Press/Spout placement offset no longer activates on invalid belt slopes
- Block-items without innate fluid handling no longer require sneaking to be placed next to item drains
- The Goggle overlay can now be activated by external add-ons
- The Goggle overlay default colour now has less opacity
- The Goggle overlay now fades in over a couple ticks
2021-07-27 15:25:25 +02:00
simibubi
eea9778840 Post-PR datagen 2021-07-27 13:43:58 +02:00
simibubi
e01a53b10e
Merge pull request #2037 from TheRamenChef/patch-2
Add milling recipes for beetroots and sea pickles
2021-07-27 13:30:43 +02:00
Jozufozu
cb8e6d92d5 Contraptions use flywheel for vanilla tiles
- Update more usage of glActiveTexture to the enum wrapper
 - Fix superglue rendering in the solid layer
 - Fix issue caused by states with different textures on contraptions
 - Bump flywheel version
2021-07-26 16:27:18 -07:00
PepperBell
1d6da03799 Copper armor fixes
- Add backtank layer to all player models
- Only add backtank layer if entity renderer returns BipedModel
- Make copper armor considered to be worn only when in the correct armor
slot
2021-07-25 14:08:46 -07:00
TheRamenChef
fc0e7a0a66
Add milling recipes for beetroots and sea pickles 2021-07-25 11:58:41 -05:00
zelophed
74d57f38fe Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev 2021-07-25 04:13:08 +02:00
zelophed
e944906519 overlayn't
- add config options that allow some more customization of the overlay renderer (addresses #2020)
- overlay position has been reset to its default position, because the config path changed

- allow integer config values to be entered and displayed as hex or binary (inside the config gui only)
- how integer values are displayed can be changed with a special comment
- minor changes to theme, that allow keys to refer to one another
2021-07-25 04:12:56 +02:00