Commit graph

68 commits

Author SHA1 Message Date
modmuss50
9ff28f4026
Split client only code into its own sourceset. (#2179)
A common source of crashes on modded Minecraft servers comes from modders accidently calling client only code from the client, this PR is another large step towards elimitating that.

This PR has been months in the making and years in the planning, requiring major changes to Loom & Loader. In recent Minecraft versions Mojang has made it easier than ever to cleanly split the jar, going against the status-quo of merging the client and server into one jar.

From the start we have designed Fabric to have a very clear split between client and common (client & server) code. Fabric has always encoraged keeping client only code seprate from the server, this can be seen at a fundamental level with the entrypoints in Loader. Fabric API's have all been designed with this mind.

This PR provides a compile safety net around Fabric API using client only code on the server. Even though there are almost 400 changed files, minimal changes beyond moving the files were required to achieve this in Fabric API, thanks to the effort of all contributors in the past.

These changes should not affect modders or players in anyway, a single "universal" jar is still produced. Im happy to awnswer any questions.
2022-05-21 16:26:46 +01:00
modmuss50
56447d9b95 22w17a 2022-04-27 20:48:57 +01:00
modmuss50
b4f4f6cda4 Update Loom and Loader. Cleanup/improve buildscript. 2021-11-12 15:02:54 +00:00
modmuss50
65d505fc8a Bump versions
All of the version need to be bumped due to fabric-api-base being updated, this highlights the need for a better solution.
2021-11-05 17:09:48 +00:00
modmuss50
0b944752fc 21w43a 2021-10-27 20:48:33 +01:00
modmuss50
413ddf6456 21w14a - Mappings update 2021-04-07 18:46:09 +01:00
modmuss50
23b3c92ea9 21w13a 2021-03-31 20:52:51 +01:00
modmuss50
92519afafe Version bump 2021-01-19 19:38:22 +00:00
modmuss50
e1f1abb1c0 20w49a 2020-12-02 19:02:44 +00:00
Thalia Nero
9f7a7423f3 Add module dependencies to maven POM (#1104) 2020-11-15 19:46:01 +00:00
modmuss50
3e817a62fd Version bump 2020-11-05 18:26:58 +00:00
modmuss50
a4467d2a9c Bump version 2020-10-27 18:36:48 +00:00
modmuss50
2b462379ad Bump versions 2020-10-18 18:38:30 +01:00
modmuss50
f8ac1db2b1 Version bump 2020-09-27 12:38:48 +01:00
grondag
8bcfced859
Fix for #987 (#1046)
* Fix #987, simplify geometry tracking, clean up scoping

* Bump indigo version

* Expose improved fromVanilla method

* Strip deprecations in non-API components

* bump renderer api version

* Clear tag for converted quads

Otherwise possible for tags added by transforms to pollute subsequent quads

* Borrow from Canvas - don't set nominal face twice, prevent header state leakage
2020-09-03 19:50:26 +01:00
shartte
5d32f58344
Make Indigo more closely aligned with vanilla's behavior when (#901)
rendering flat-shaded quads. Use the cull-face (if present)
to determine where the light-value is being sampled from,
and use the light-face to apply diffuse lighting.
Also do not force the light-face to be set to the cull-face,
since some blocks use faces where these are both set and different
(see the insides of a Cauldron for example).
2020-07-24 16:24:33 +01:00
modmuss50
7548be6d43 Revert "Indigo Flat-Shading Lighting Fix (#898)"
This reverts commit 28388fad
2020-07-20 19:52:17 +01:00
shartte
28388fadd8 Indigo Flat-Shading Lighting Fix (#898)
* Make Indigo more closely aligned with vanilla's behavior when
rendering flat-shaded quads. Use the cull-face (if present)
to determine where the light-value is being sampled from,
and use the light-face to apply diffuse lighting.

* Bump Indigo version to 0.3.4
2020-07-20 19:37:34 +01:00
modmuss50
3b4b2c130e Version bump 2020-07-17 16:22:50 +01:00
modmuss50
4d66bed54e 1.16.1 + hopefully fix github actions 2020-06-25 17:41:13 +01:00
modmuss50
059ea866ec update mappings 2020-06-09 22:29:07 +01:00
modmuss50
0a73535729 Bump version 2020-05-29 20:11:58 +01:00
modmuss50
da175ad6ad 20w22a 2020-05-29 15:56:10 +01:00
modmuss50
6c0e72dfcd Bump version 2020-04-20 01:43:57 +01:00
modmuss50
c808269fb2 20w14a 2020-04-02 19:28:36 +01:00
modmuss50
372d827d5a 20w13a 2020-03-25 18:20:06 +00:00
modmuss50
d249f7b6d6 20w12a 2020-03-18 20:05:01 +00:00
modmuss50
2f56dff236 Initial port to 20w09a 2020-02-26 19:10:16 +00:00
Player
cfa5f8f26a Bump version 2020-02-10 00:58:35 +01:00
modmuss50
9421522d5a 20w06a 2020-02-05 18:05:59 +00:00
modmuss50
203491ea23 1.15.2-pre1 2020-01-14 20:50:51 +00:00
modmuss50
175d0eb82e Fix render offset not being applied.
Fixes flower and other blocks always rendering in the center of the block
2019-12-28 07:51:56 +00:00
modmuss50
d830abd6cf Work around odd crash in OpenJ9 due to an anonymous in a mixin. 2019-12-10 21:26:24 +00:00
modmuss50
821cdba74e 1.15-pre7 - mapping changes 2019-12-09 21:40:36 +00:00
modmuss50
ec40b2e12c 1.15-pre4
a few mapping changes
2019-12-03 17:02:41 +00:00
modmuss50
ea865a1450 Fix crash on startup
Required as mixin was complaining: target requires method signature because enclosing type information for net.minecraft.client.render.chunk.ChunkBuilder$BuiltChunk$RebuildTask is unavailable
2019-11-29 00:29:17 +00:00
modmuss50
06c939b35c 1.15-pre3 - just mapping changes 2019-11-28 19:40:14 +00:00
modmuss50
2775144ad8 Fix NPE in MixinChunkRebuildTask Closes #436 2019-11-26 15:37:59 +00:00
modmuss50
f3d8141bae 1.15-pre1 2019-11-21 21:04:17 +00:00
modmuss50
6c2678816a 19w46a 2019-11-13 17:41:46 +00:00
modmuss50
f947d671a1 19w45b + Fix missed optional mixin fixes
MixinChunkRebuildTask should have been ported yesterday, but it was only logging out a warning.
2019-11-08 13:23:12 +00:00
modmuss50
12515ed9ee 19w45a 2019-11-07 20:35:26 +00:00
Player
b7f9825dbb Add checkstyle verification for package names, fix non-API packages. 2019-11-03 20:14:45 +01:00
modmuss50
ce77399215 19w44a
Only yarn renames
2019-10-30 17:10:30 +00:00
grondag
b8dee3c017 Fix breaking render for API models (#406)
* Fix breaking render for API models

* Bump versions
2019-10-19 19:29:48 +01:00
grondag
0f869edf26 Fix indigo rendering in 19w42a (#405)
* Fix indigo rendering in 19w42a
* Prevent crashes for modded item rendering

VertexConsumer now thows unless all vertex elements are populated.  Overlay UV coordinates are thus required for block breaking, item glint, etc.  Block breaking doesn't seem to work fully for non-vanilla models, but cause isn't yet clear.
2019-10-17 15:54:54 +00:00
modmuss50
d2e3099f39 19w42a
Includes a work around for the funky rendering issues, this will need looking into some more.
2019-10-16 18:54:16 +01:00
modmuss50
ccd269cfad 19w41a 2019-10-09 19:05:13 +01:00
modmuss50
da5bc0bb05 19w40a 2019-10-02 15:48:19 +01:00
grondag
32ac36d518
1.14 Updates and Render Fixes (#394)
* Fix EntityRenderDispatcher hook (again)

* Add fabric-particles-v1

* Add a sync() method to BlockEntityClientSerializable

* Prevent CME due to off-thread block entity updates (#367)

* Restore rendering features disabled in first 19w39a release

* Remove rendering stuffs no longer needed due to snapshots

* Bump versions as needed
2019-09-29 18:21:38 -07:00