startsmercury / simply-no-shading Goto Github PK
View Code? Open in Web Editor NEWA mod mimicking OptiFine's Internal Shader though with less performance impact.
Home Page: https://modrinth.com/mod/simply-no-shading
License: MIT License
A mod mimicking OptiFine's Internal Shader though with less performance impact.
Home Page: https://modrinth.com/mod/simply-no-shading
License: MIT License
<root>
core.shading
shading.block.minecraft
shading.cloud.minecraft
shading.enhanced.block.entity.enhancedblockentities
shading.frapi.models.fabric.renderer.api.v1
shading.liquid.bedrockify
shading.liquid.minecraft
shading.liquid.sodium
Bedrockify: https://github.com/juancarloscp52/BedrockIfy
As much as I am aware that the current code used to work, it is rather not easy to maintain and I am only growing ever unsatisfied with its complexity. As much as I would like to have it in version 5 it would, unfortunately, bring breaking changes and it would make much more sense to be the next major update instead.
I've noticed this mod is incompatible with the Enhanced Block Entities Mod. The game doesn't crash, but all block entities render as missing blocks.
Here's a link to a screenshot:
https://drive.google.com/file/d/1NvDyE4ep4i_3OZ_E4i-YZLbvLHB6Cfgh/view?usp=sharing
The error that appears several times in my logs:
org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException: Critical injection failure: @Redirect annotation on initEmittedBlockQuads could not find any targets matching 'Lfoundationgames/enhancedblockentities/client/model/DynamicBakedModel;emitBlockQuads(Lnet/minecraft/class_1920;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Ljava/util/function/Supplier;Ljava/lang/Object;)V' in foundationgames.enhancedblockentities.client.model.DynamicBakedModel. Using refmap simply-no-shading-refmap.json [PREINJECT Applicator Phase -> simply-no-shading+fabric.mixins.json:shading.enhanced.block.entity.enhancedblockentities.DynamicBakedModelFabricMixin from mod simply-no-shading -> Prepare Injections -> -> redirect$ccl000$initEmittedBlockQuads(Ljava/util/Iterator;)Ljava/lang/Object; -> Parse]
at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.validateTargets(InjectionInfo.java:656)
at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.findTargets(InjectionInfo.java:587)
at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.readAnnotation(InjectionInfo.java:330)
at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.<init>(InjectionInfo.java:316)
at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.<init>(InjectionInfo.java:308)
at org.spongepowered.asm.mixin.injection.struct.RedirectInjectionInfo.<init>(RedirectInjectionInfo.java:44)
at jdk.internal.reflect.GeneratedConstructorAccessor32.newInstance(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
at org.spongepowered.asm.mixin.injection.struct.InjectionInfo$InjectorEntry.create(InjectionInfo.java:149)
at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.parse(InjectionInfo.java:708)
at org.spongepowered.asm.mixin.transformer.MixinTargetContext.prepareInjections(MixinTargetContext.java:1330)
at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.prepareInjections(MixinApplicatorStandard.java:1043)
at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:393)
at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:325)
at org.spongepowered.asm.mixin.transformer.TargetClassContext.apply(TargetClassContext.java:421)
at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:403)
at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363)
at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:234)
at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:202)
at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:414)
at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.tryLoadClass(KnotClassDelegate.java:323)
at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.loadClass(KnotClassDelegate.java:218)
at net.fabricmc.loader.impl.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:145)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
at foundationgames.enhancedblockentities.client.model.DynamicUnbakedModel.method_4753(DynamicUnbakedModel.java:45)
at net.minecraft.class_1088.method_15878(class_1088.java:481)
at net.minecraft.class_807.method_4753(class_807.java:77)
at net.minecraft.class_1088.method_15878(class_1088.java:481)
at net.minecraft.class_1088.method_4733(class_1088.java:250)
at java.base/java.util.HashMap$KeySet.forEach(HashMap.java:1008)
at net.minecraft.class_1088.method_18177(class_1088.java:247)
at net.minecraft.class_1092.method_18179(class_1092.java:67)
at net.minecraft.class_1092.method_18788(class_1092.java:19)
at net.minecraft.class_4080.method_18790(class_4080.java:13)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:718)
at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482)
at net.minecraft.class_4014.method_18365(class_4014.java:69)
at net.minecraft.class_1255.execute(class_1255.java:103)
at net.minecraft.class_4014.method_18367(class_4014.java:68)
at java.base/java.util.concurrent.CompletableFuture$UniCompletion.claim(CompletableFuture.java:572)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:714)
at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510)
at java.base/java.util.concurrent.CompletableFuture.postFire(CompletableFuture.java:614)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:726)
at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482)
at net.minecraft.class_4014.method_18365(class_4014.java:69)
at net.minecraft.class_1255.execute(class_1255.java:103)
at net.minecraft.class_4014.method_18367(class_4014.java:68)
at java.base/java.util.concurrent.CompletableFuture$UniCompletion.claim(CompletableFuture.java:572)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:714)
at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510)
at java.base/java.util.concurrent.CompletableFuture.postFire(CompletableFuture.java:614)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:726)
at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482)
at net.minecraft.class_4014.method_18365(class_4014.java:69)
at net.minecraft.class_1255.execute(class_1255.java:103)
at net.minecraft.class_4014.method_18367(class_4014.java:68)
at java.base/java.util.concurrent.CompletableFuture$UniCompletion.claim(CompletableFuture.java:572)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:714)
at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510)
at java.base/java.util.concurrent.CompletableFuture.postFire(CompletableFuture.java:614)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:726)
at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482)
at net.minecraft.class_4014.method_18365(class_4014.java:69)
at net.minecraft.class_1255.execute(class_1255.java:103)
at net.minecraft.class_4014.method_18367(class_4014.java:68)
at java.base/java.util.concurrent.CompletableFuture$UniCompletion.claim(CompletableFuture.java:572)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:714)
at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510)
at java.base/java.util.concurrent.CompletableFuture.postFire(CompletableFuture.java:614)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:726)
at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482)
at net.minecraft.class_4014.method_18365(class_4014.java:69)
at net.minecraft.class_1255.execute(class_1255.java:103)
at net.minecraft.class_4014.method_18367(class_4014.java:68)
at java.base/java.util.concurrent.CompletableFuture$UniCompletion.claim(CompletableFuture.java:572)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:714)
at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510)
at java.base/java.util.concurrent.Complehttps://www.curseforge.com/minecraft/mc-mods/enhanced-block-entitiestableFuture.postFire(CompletableFuture.java:614)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:726)
at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482)
at net.minecraft.class_4014.method_18365(class_4014.java:69)
at net.minecraft.class_1255.execute(class_1255.java:103)
at net.minecraft.class_4014.method_18367(class_4014.java:68)
at java.base/java.util.concurrent.CompletableFuture$UniCompletion.claim(CompletableFuture.java:572)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:714)
at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510)
at java.base/java.util.concurrent.CompletableFuture.postFire(CompletableFuture.java:614)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:726)
at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482)
at com.mojang.blaze3d.systems.RenderSystem.replayQueue(RenderSystem.java:211)
at com.mojang.blaze3d.systems.RenderSystem.flipFrame(RenderSystem.java:198)
at net.minecraft.class_1041.method_15998(class_1041.java:315)
at net.minecraft.class_310.method_1523(class_310.java:1205)
at net.minecraft.class_310.method_1514(class_310.java:768)
at net.minecraft.client.main.Main.method_44604(Main.java:244)
at net.minecraft.client.main.Main.main(Main.java:51)
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:461)
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
Is the mod working as intended in 1.19.2?
crash-2023-03-31_21.21.02.0360-quilt_loader.txt
Downgrading Sodium to version 0.4.8 and mods integrated with it (Iris, Indium etc.) resolves this issue.
Who knows who wanted an option for that. Well, I know I do.
The game crashes immediately when you start it with the mod, even without other mods.
Fabric version 0.13.3 and mod version 4.1.18. Everything else should be in the crash log.
It will most likely utilize subtitles, the one that beds use.
As of this writing, sodium compatibility is incomplete.
config
entrypoint
gui
impl
mixin
util
config
entrypoint
gui
impl
mixin
#56util
Lacking a reliable, user-friendly interface is a huge pain.
It was not right of me to leave my work here without a self-update. My attention quickly diverted to academics, especially since my course at the university is already transitioning classes on-campus. Looking back, I have a lot left unfinished and unpolished; I can't promise this but I will try to work on the project slowly, with some commits a month.
I was able to verify that before installing this mod the game still does not crash.
I have attached the crash log
crash-2023-08-06_10.44.04-client.txt
This mod is useless when any shader is enabled. Therefore reloading chunks on changing the config is not necessary.
Now that the block shading option is present, it is about time for fluid shading.
Download it here on GitHub or at Modrinth, there has been "hash issues" due to reuploading stuff (due to uploading the wrong jar).
Settings don't save and are reset upon restarting the game.
My settings:
All shading: off
Block shading: on
Cloud shading: off
Enhanced block entities: off
Liquid shading: off
Smart reload: on
Smart reload message: off
Currently, BedrockIfy's bedrocky-edition-like screen background effect is 'inverted'. The supposedly dirt backgrounds are swapped with the panorama background.
Design issue, I'll be fixing this soon.
I am not fully sure, but something tells me it would look nice?
Original conversation in Iris Discord
https://discord.com/channels/774352792659820594/936882580295401512/937684905045946378
None at all?
When paired with Sodium 0.4.11+build.26, the game crashes on startup. Crash log: https://mclo.gs/21qM6Wq
This issue has already been posted on Sodium's bug tracker, but they said it needed to be fixed here instead.
No commits for some days? I have been working on the build script and decided that it will be applied to just one commit/push.
It has been observed that the config screen is missing the dirt background on the title and button panels of the config screen when a world is loaded in version 6.0.5 for Minecraft versions 1.19.1, 1.19.2, and 1.19.3.
The images on the Modrinth and Curseforge project pages for this mod are not loading because the source URL still references the branch main
of this repository, but that branch has been renamed to 4.x/1.18.2
. This broke these links, causing them to return HTTP 404.
To fix this, the links to the images in both the Modrinth and Curseforge pages should be updated to reflect the new branch name.
Hello! Recently i have downloaded the Simply-No-Shading mod, but when i start my minecraft, it crashes! I am playing on version 1.19 and when i started my minecraft earlier today, it worked just fine! I have also tried some diffrent versions of Simply-No-Shading, but it al just crashes my minecraft!
This is related to the crash experienced, that was fixed in version 4.
Root of all crashes due to unpredictable local variable name changes from devenv to production usage.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.