Commit graph

935 commits

Author SHA1 Message Date
Jozufozu
a930bc97cc It launches
- yeet the fog
 - update mixin compatibility level
2021-09-15 13:49:18 -07:00
2ae580259c Remap, update forge, minecraft and java 2021-09-15 09:14:30 +02: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
f9de5f4721 Merge branch 'dev' into shader-pipeline 2021-08-06 11:45:39 -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
55968d2c98 Switch to MIT Licence 2021-08-02 20:07:49 -07:00
Jozufozu
17d5081345 Expose ClippingHelper in BeginFrameEvent 2021-07-28 18:13:47 -07:00
Jozufozu
aaf019f3cb Merge branch 'dev' into shader-pipeline
# Conflicts:
#	src/main/java/com/jozufozu/flywheel/backend/ShaderSources.java
2021-07-26 21:58:53 -07:00
Jozufozu
e1aa055983 Parallel and caching
- NEEDS MORE TESTING
 - Tick and update instances in parallel
 - Mixin to cache chunk lookups
2021-07-18 18:00:09 -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
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
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
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
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
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
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
simibubi
1b5ede1a5d main menu title
- Added new logo to the Create menu screen
2021-06-10 20:32:17 +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
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
d47f898c76 Move away from a static backend class, add a registration event 2021-06-06 15:46:16 -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
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
simibubi
9b14d99933
Merge pull request #1632 from dunois2737/mc1.16/dev
Update zh_tw.json for create 0.3.1
2021-05-27 14:22:37 +02:00
simibubi
d82c8bd913
Merge pull request #1606 from joker876/mc1.16/dev
Update pl_pl.json to add latest translation
2021-05-27 14:21:17 +02:00
simibubi
09691b4b40 Redstone gamepads
- Added the Linked Controller
2021-05-26 22:03:06 +02:00
JozsefA
7f9ff3b7ca Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/chromatic-projector 2021-05-25 12:23:55 -07:00
JozsefA
341a385628 Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/chromatic-projector
# Conflicts:
#	src/generated/resources/assets/create/lang/en_us.json
#	src/main/java/com/simibubi/create/AllBlocks.java
#	src/main/java/com/simibubi/create/AllTileEntities.java
#	src/main/java/com/simibubi/create/content/contraptions/components/deployer/DeployerTileEntity.java
#	src/main/java/com/simibubi/create/foundation/gui/AllIcons.java
#	src/main/java/com/simibubi/create/foundation/networking/AllPackets.java
#	src/main/resources/assets/create/textures/gui/icons.png
#	src/main/resources/create.mixins.json
2021-05-23 14:11:40 -07:00
PepperBell
6c390977d8 Init Cleanup
- Refactor AllContainerTypes to use Registrate
- Replace RegistryEntry in AllEntityTypes and AllFluids with EntityEntry and FluidEntry, respectively
- Make AllEntityTypes use Registrate to register entity renderers instead of a separate method
- Refactor AllColorHandlers
- Fix error when a POI block is moved by a contraption
- Rename some static final fields to be upper snake case
- Make static fields in Create and CreateClient final
- Add I prefix to Coordinate interface
- Fix typo (BracketedTileEntityBehaviour#isBacketPresent)
- Make mixins go in alphabetical order
- Make pack.mcmeta use 2 spaces for indents
2021-05-22 18:00:10 -07:00
JozsefA
9352ef9ede Json program specs, new extension/gamestate system.
- Program specs are now loaded from json instead of being defined in code and registered manually.
 - Within the json spec, a program can define a list of states.
 - A state consists of:
   - A "when" clause.
   - A list of strings to be #defined.
   - A list of extensions to apply at program link time.
 - Each frame, the first state whose "when" clause returns true will be used.
 - A when clause consists of:
  - A state provider defined by a resource location.
  - A value to match.
 - When the value returned by the provider matches the value defined in the when clause, the when clause is considered to be 'true'.
 - There is syntactic sugar for when a provider returns a boolean value.
 - This system is in its infancy, and there is plenty of room for improvement.
2021-05-22 17:45:01 -07:00
simibubi
aea44aa3fb
Merge pull request #1613 from reidbhuntley/schematics-crash
Various bugfixes regarding schematics
2021-05-22 17:50:45 +02:00
dunois2737
62026e3f13
update zh_tw for create 0.3.1 2021-05-22 16:10:23 +09:00
dunois2737
9a935969bb
update zh_tw for create 0.3.1 2021-05-22 16:06:26 +09:00
simibubi
56830052f3
Merge pull request #1568 from PepperCode1/mc1.16/fix-bugs
Fix Some Bugs
2021-05-22 04:14:58 +02:00
JozsefA
4d755dc506 More simplification
- Move more stuff to the flywheel namespace
 - Give up on ShaderConstants, there's a better way to do it
 - A semblance of better crash reports
2021-05-19 16:35:37 -07:00
reidbhuntley
e916b06862 Added model data refresh mixin 2021-05-18 21:52:35 -04:00
JozsefA
fd6e06b487 whoops everything was spinning backwards 2021-05-18 14:46:45 -07:00
JozsefA
55703d8838 Move to the template system and overhaul instance attributes
- All material shaders now use the template system.
 - Because of the template system, we can know what attributes a material has, along with how they're formatted.
 - All of the *Attribute enums are effectively inlined, as the context they used to provide is no longer needed.
2021-05-18 14:05:52 -07:00
Kryppers
6c3bec250f Pixel perfect
Fixed one of the tank rivets being out of place by one pixel.
2021-05-17 20:04:16 +01:00
joker876
a74c8127f3
Update pl_pl.json 2021-05-17 10:59:39 +02:00
JozsefA
8efe8ed01e Port the fixed lightmap shift to WorldContext 2021-05-14 18:32:27 -07:00
JozsefA
3856283353 Merge remote-tracking branch 'origin/chromatic-projector' into mc1.16/chromatic-projector
# Conflicts:
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/render/ContraptionModel.java
2021-05-14 18:07:13 -07:00
JozsefA
a9cdb1ab6b Begin buffer rework 2021-05-14 18:04:25 -07:00
PepperBell
6c1c7a10d9 Fix darker contraptions
Also
- Partially fix incorrect vertex lighting (make sure to not sure Forge's lighting calculator)
- Reorder some lighting to make it more efficient
- Cleanup some things
2021-05-14 16:34:35 -07:00
JozsefA
56b2046957 It can actually load and link something
- Lots of refactoring in the shader loading code.
 - Abstract all the different shader source transformations into ProcessingStage.
 - An ordered list of ProcessingStages is called a ShaderTransformer.
 - When you acquire sources, a Shader now keeps track of the source location, shader type, and source code all together.
2021-05-12 15:14:33 -07:00
JozsefA
c1b7a1c19d Extremely fancy shader templating
- Nothing is properly hooked up yet.
 - A single shader file will be able to be compiled with different opengl targets.
 - I plan on using this to implement meshlet rendering as an alternate backend-backend that will be used when available.
 - It could also be used to enable compatibility with opengl 3.0 or potentially even 2.0.
2021-05-11 18:24:12 -07:00
JozsefA
2c4d650639 Organize the mixins 2021-05-11 12:34:38 -07:00
JozsefA
916b187aa8 Better belt breaking 2021-05-11 11:39:13 -07:00
JozsefA
f6937ffb0c Only a few moves left
- flywheel stuff only barely depends on create
 - start drafting what multiple backends could look like
2021-05-11 11:02:43 -07:00
JozsefA
70401e4ac4 More tweaking
- FLWFinalizeColor takes care of assigning gl_FragColor
 - Multiply crumbling alpha with diffuse alpha
2021-05-08 23:29:02 -07:00
PepperBell
bc6a6a3c9b Merge remote-tracking branch 'upstream/mc1.16/dev' into mc1.16/fix-bugs 2021-05-08 20:56:21 -07:00
PepperBell
b10ceaf63d Improve normal scaling fix 2021-05-08 20:02:32 -07:00
JozsefA
4111680755 FLWFinalizeWorld takes care of assigning gl_Position 2021-05-07 23:22:40 -07:00
Kryppers
39fb642fd9 The compressioning
50 to 90% compression across all textures
2021-05-08 01:14:22 +01:00
JozsefA
5821476c9f Strip png metadata, save 157KB 2021-05-07 16:42:28 -07:00
Kryppers
c56464d0df copper polish 2021-05-08 00:17:29 +01:00
JozsefA
3171a0b7e5 Block breaking animations for arbitrary flywheel tiles.
- Kinda jank so far, but it's great progress.
 - This is also a really good showcase for how flexible the ShaderContext system is.
2021-05-06 18:38:05 -07:00
PepperCode1
da6f2652e7 Merge branch 'mc1.16/dev' of https://github.com/Creators-of-Create/Create into mc1.16/fix-bugs 2021-05-06 14:15:18 -07:00
PepperBell
970a5c2f53 Fix JEI Scene Lighting
- Fix sudden light transitions in JEI scenes
- Allow block GuiGameElements to set custom lighting
- Remove deprecated GuiGameElement methods
2021-05-06 14:14:31 -07:00
simibubi
187c448513 Deploying items on items
- Added the Deploying recipe type
- Deployers can now polish items on belts or depots
- Deployers now make a little polishing sound when using sandpaper
2021-05-06 16:40:33 +02:00
JozsefA
9736ba19b5 Things here and there
- Move CreateClient.kineticRenderer to Backend
 - InstancedTileRenderers keep track of their own queuedUpdates
 - Sort of a listener system for some render events
2021-05-04 23:56:50 -07:00
simibubi
b38dd90431 Subcreatica, Part II
- Diving helmets now display a timer near the hotbar when underwater
- Copper backtanks now play an effect when accumulated air is maxed
- Copper backtank blocks can now be waterlogged
- Copper backtank cogs now animate
- Fixed subtitle of equip sounds
2021-05-04 18:04:00 +02:00
zelophed
3c4e504f61 Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev
# Conflicts:
#	src/main/java/com/simibubi/create/events/ClientEvents.java
#	src/main/resources/create.mixins.json
2021-05-04 16:12:07 +02:00
JozsefA
bc5630e593 ShaderContexts
- A huge step towards more arbitrary shader usage
 - Need to work on registration of the different parts
 - Things are unorganized
2021-05-03 21:46:33 -07:00
simibubi
076783eb7e Subcreatica
- Added the Copper Backtank
- Added Diving helmet and boots
2021-05-04 03:50:17 +02:00
JozsefA
fcbab5b820 #flwbuiltins and oh so much less overhead
- Put a lot of the reusable code in a sort of standard library
 - Need to evaluate just how much should be lumped in there
 - Still need to allow for users to create alternate contexts for the builtins
 - Normal world and contraptions are still hardcoded contexts
2021-05-03 13:42:23 -07:00
zelophed
fd62f2f8f4 Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev
# Conflicts:
#	src/main/java/com/simibubi/create/CreateClient.java
#	src/main/java/com/simibubi/create/compat/jei/category/BlockzapperUpgradeCategory.java
#	src/main/java/com/simibubi/create/content/curiosities/symmetry/SymmetryWandScreen.java
#	src/main/java/com/simibubi/create/content/curiosities/zapper/ZapperScreen.java
2021-05-03 19:58:39 +02:00
zelophed
c36346b97d Merge branch 'mc1.16/config-ui' into mc1.16/dev
# Conflicts:
#	src/main/java/com/simibubi/create/content/contraptions/goggles/GoggleConfigScreen.java
#	src/main/java/com/simibubi/create/foundation/command/AllCommands.java
#	src/main/java/com/simibubi/create/foundation/command/FabulousWarningCommand.java
#	src/main/java/com/simibubi/create/foundation/command/OverlayConfigCommand.java
#	src/main/java/com/simibubi/create/foundation/command/PonderCommand.java
#	src/main/java/com/simibubi/create/foundation/command/ToggleDebugCommand.java
#	src/main/java/com/simibubi/create/foundation/command/ToggleExperimentalRenderingCommand.java
#	src/main/java/com/simibubi/create/foundation/gui/AbstractSimiContainerScreen.java
#	src/main/java/com/simibubi/create/foundation/gui/AbstractSimiScreen.java
#	src/main/java/com/simibubi/create/foundation/gui/AllIcons.java
#	src/main/java/com/simibubi/create/foundation/gui/UIRenderHelper.java
#	src/main/java/com/simibubi/create/foundation/ponder/NavigatableSimiScreen.java
#	src/main/java/com/simibubi/create/foundation/ponder/PonderProgressBar.java
#	src/main/java/com/simibubi/create/foundation/ponder/PonderUI.java
#	src/main/java/com/simibubi/create/foundation/ponder/content/PonderIndexScreen.java
#	src/main/java/com/simibubi/create/foundation/ponder/content/PonderTagScreen.java
#	src/main/java/com/simibubi/create/foundation/ponder/ui/ChapterLabel.java
#	src/main/java/com/simibubi/create/foundation/ponder/ui/PonderButton.java
#	src/main/resources/create.mixins.json
2021-05-03 16:54:32 +02:00
zelophed
ae76821190 more changes to color and theme 2021-05-03 16:14:58 +02:00
JozsefA
35768b5ade Step towards arbitrary shader contexts 2021-05-02 14:16:02 -07:00
JozsefA
15f4cd305e Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/chromatic-projector 2021-05-02 11:50:39 -07:00
simibubi
fd030d3273 Post PR datagen
- Fixed worldshaper asset errors
- Removed zero-width spaces from pl_pl localization file (broke datagen)
- Regenerated unfinished lang templates
2021-05-02 19:37:39 +02:00
simibubi
4974df5c99
Merge pull request #1544 from PepperCode1/mc1.16/model-cleanup
Cleanup Models and Custom Item Rendering
2021-05-02 17:42:48 +02:00
simibubi
4f10f743b4
Merge pull request #1525 from CKenJa/mc1.16/dev
Update & fix  ja_jp.json
2021-05-02 17:40:49 +02:00
simibubi
cc2541a476
Merge pull request #1482 from joker876/mc1.16/dev
Add pl_pl localization (Poland)
2021-05-02 17:38:36 +02:00
simibubi
dd82629e5d
Merge pull request #1460 from Chubzik1/patch-2
Small fix for advancements (ru_ru.json)
2021-05-02 17:35:33 +02:00
simibubi
57af793c16
Merge pull request #1456 from LWHK/mc1.16/dev
[Localization]Update CHS translation
2021-05-02 17:34:29 +02:00
JozsefA
2112061db0 Vertex shader abstractions 2021-05-01 23:39:36 -07:00
JozsefA
2e16b85190 Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/chromatic-projector
# Conflicts:
#	src/generated/resources/.cache/cache
#	src/generated/resources/assets/create/lang/unfinished/de_de.json
#	src/generated/resources/assets/create/lang/unfinished/es_es.json
#	src/generated/resources/assets/create/lang/unfinished/es_mx.json
#	src/generated/resources/assets/create/lang/unfinished/fr_fr.json
#	src/generated/resources/assets/create/lang/unfinished/it_it.json
#	src/generated/resources/assets/create/lang/unfinished/ja_jp.json
#	src/generated/resources/assets/create/lang/unfinished/ko_kr.json
#	src/generated/resources/assets/create/lang/unfinished/nl_nl.json
#	src/generated/resources/assets/create/lang/unfinished/pt_br.json
#	src/generated/resources/assets/create/lang/unfinished/ru_ru.json
#	src/generated/resources/assets/create/lang/unfinished/zh_cn.json
#	src/generated/resources/assets/create/lang/unfinished/zh_tw.json
2021-05-01 16:18:32 -07:00
PepperBell
ffd4c75572 Merge remote-tracking branch 'upstream/mc1.16/dev' into
mc1.16/model-cleanup

Conflicts:
	src/main/java/com/simibubi/create/content/curiosities/tools/DeforesterItemRenderer.java
	src/main/java/com/simibubi/create/content/curiosities/zapper/blockzapper/BlockzapperItemRenderer.java
2021-05-01 15:46:50 -07:00
PepperBell
9be5a3ec2a Cleanup 2021-05-01 15:41:03 -07:00
simibubi
8fff3d6745 The great second purge of Tools
- Removed the Blockzapper
- Removed the Deforester
- Handheld Worldshaper -> Creative Worldshaper
- Worldshapers now have a "surface" and "cluster" brush type
- Worldshapers now follow the creative colour palette
- Some UI touch-ups for tools
2021-05-01 13:19:01 +02:00
JozsefA
dc3517eb3a Inversion 2021-04-30 14:28:18 -07:00
CKenJa
572b30f815 Update & fix ja_jp.json
credit: RakuGaki-MC
2021-04-29 18:58:23 +09:00
JozsefA
18d23f69e0 Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/chromatic-projector
# Conflicts:
#	src/generated/resources/.cache/cache
#	src/generated/resources/assets/create/lang/en_us.json
#	src/generated/resources/assets/create/lang/unfinished/de_de.json
#	src/generated/resources/assets/create/lang/unfinished/es_es.json
#	src/generated/resources/assets/create/lang/unfinished/es_mx.json
#	src/generated/resources/assets/create/lang/unfinished/fr_fr.json
#	src/generated/resources/assets/create/lang/unfinished/it_it.json
#	src/generated/resources/assets/create/lang/unfinished/ja_jp.json
#	src/generated/resources/assets/create/lang/unfinished/ko_kr.json
#	src/generated/resources/assets/create/lang/unfinished/nl_nl.json
#	src/generated/resources/assets/create/lang/unfinished/pt_br.json
#	src/generated/resources/assets/create/lang/unfinished/ru_ru.json
#	src/generated/resources/assets/create/lang/unfinished/zh_cn.json
#	src/generated/resources/assets/create/lang/unfinished/zh_tw.json
2021-04-28 12:42:41 -07:00
TUsama
caafd3baab forgot it 2021-04-28 23:33:46 +08:00
JozsefA
54f5783489 More versatile ui/settings
- The channel mask still needs work
 - Add contrast filter
2021-04-28 00:01:26 -07:00
simibubi
35d0ce8387 Widget resize
- Condensed the main reading space of config UIs
- Reworked some of the widgets to better arrange themselves in a column
2021-04-27 20:07:29 +02:00