Added Shaders
This commit is contained in:
@@ -36,6 +36,7 @@ public class MeteorRejectsAddon extends MeteorAddon {
|
|||||||
modules.add(new NewChunks());
|
modules.add(new NewChunks());
|
||||||
modules.add(new ObsidianFarm());
|
modules.add(new ObsidianFarm());
|
||||||
modules.add(new RenderInvisible());
|
modules.add(new RenderInvisible());
|
||||||
|
modules.add(new Shaders());
|
||||||
modules.add(new SkeletonESP());
|
modules.add(new SkeletonESP());
|
||||||
modules.add(new Sneak());
|
modules.add(new Sneak());
|
||||||
modules.add(new SoundLocator());
|
modules.add(new SoundLocator());
|
||||||
|
|||||||
@@ -0,0 +1,30 @@
|
|||||||
|
package cloudburst.rejects.mixin;
|
||||||
|
|
||||||
|
import org.spongepowered.asm.mixin.Final;
|
||||||
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
|
import org.spongepowered.asm.mixin.Shadow;
|
||||||
|
import org.spongepowered.asm.mixin.injection.*;
|
||||||
|
|
||||||
|
import net.minecraft.client.MinecraftClient;
|
||||||
|
import net.minecraft.client.gl.ShaderEffect;
|
||||||
|
import net.minecraft.client.render.GameRenderer;
|
||||||
|
|
||||||
|
import cloudburst.rejects.modules.Shaders;
|
||||||
|
import minegame159.meteorclient.systems.modules.Modules;
|
||||||
|
|
||||||
|
@Mixin(GameRenderer.class)
|
||||||
|
public class GameRendererMixin {
|
||||||
|
@Shadow @Final private MinecraftClient client;
|
||||||
|
|
||||||
|
@Redirect(method = "render", at = @At(value = "FIELD", target = "Lnet/minecraft/client/render/GameRenderer;shader:Lnet/minecraft/client/gl/ShaderEffect;", ordinal = 0))
|
||||||
|
private ShaderEffect renderShader(GameRenderer renderer, float tickDelta) {
|
||||||
|
ShaderEffect shader = Modules.get().get(Shaders.class).getShaderEffect();
|
||||||
|
|
||||||
|
if (shader != null) {
|
||||||
|
shader.setupDimensions(client.getWindow().getFramebufferWidth(), client.getWindow().getFramebufferHeight());
|
||||||
|
shader.render(tickDelta);
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
79
src/main/java/cloudburst/rejects/modules/Shaders.java
Normal file
79
src/main/java/cloudburst/rejects/modules/Shaders.java
Normal file
@@ -0,0 +1,79 @@
|
|||||||
|
package cloudburst.rejects.modules;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
|
import net.minecraft.client.gl.ShaderEffect;
|
||||||
|
import net.minecraft.util.Identifier;
|
||||||
|
|
||||||
|
import cloudburst.rejects.MeteorRejectsAddon;
|
||||||
|
import minegame159.meteorclient.settings.EnumSetting;
|
||||||
|
import minegame159.meteorclient.settings.Setting;
|
||||||
|
import minegame159.meteorclient.settings.SettingGroup;
|
||||||
|
import minegame159.meteorclient.systems.modules.Module;
|
||||||
|
|
||||||
|
public class Shaders extends Module {
|
||||||
|
|
||||||
|
public enum Shader {
|
||||||
|
None,
|
||||||
|
Notch,
|
||||||
|
FXAA,
|
||||||
|
Art,
|
||||||
|
Bumpy,
|
||||||
|
Blobs,
|
||||||
|
Blobs2,
|
||||||
|
Pencil,
|
||||||
|
Vibrant,
|
||||||
|
Deconverge,
|
||||||
|
Flip,
|
||||||
|
Invert,
|
||||||
|
NTSC,
|
||||||
|
Outline,
|
||||||
|
Phosphor,
|
||||||
|
Scanline,
|
||||||
|
Sobel,
|
||||||
|
Bits,
|
||||||
|
Desaturate,
|
||||||
|
Green,
|
||||||
|
Blur,
|
||||||
|
Wobble,
|
||||||
|
Antialias,
|
||||||
|
Creeper,
|
||||||
|
Spider
|
||||||
|
}
|
||||||
|
|
||||||
|
private final SettingGroup sgGeneral = settings.getDefaultGroup();
|
||||||
|
|
||||||
|
private ShaderEffect shader = null;
|
||||||
|
|
||||||
|
public Shaders() {
|
||||||
|
super(MeteorRejectsAddon.CATEGORY, "shaders", "1.7 Super secret settings");
|
||||||
|
}
|
||||||
|
|
||||||
|
private final Setting<Shader> shaderEnum = sgGeneral.add(new EnumSetting.Builder<Shader>()
|
||||||
|
.name("shader")
|
||||||
|
.description("Select which shader to use")
|
||||||
|
.defaultValue(Shader.None)
|
||||||
|
.onChanged(this::onChanged)
|
||||||
|
.build()
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
public void onChanged(Shader s) {
|
||||||
|
String name;
|
||||||
|
if (s == Shader.Vibrant) name = "color_convolve";
|
||||||
|
else if (s == Shader.Scanline) name = "scan_pincushion";
|
||||||
|
else name = s.toString().toLowerCase();
|
||||||
|
Identifier shaderID = new Identifier(String.format("shaders/post/%s.json", name));
|
||||||
|
try {
|
||||||
|
ShaderEffect shader = new ShaderEffect(mc.getTextureManager(), mc.getResourceManager(), mc.getFramebuffer(), shaderID);
|
||||||
|
this.shader = shader;
|
||||||
|
} catch (IOException e) {
|
||||||
|
this.shader = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public ShaderEffect getShaderEffect() {
|
||||||
|
if (!this.isActive()) return null;
|
||||||
|
return shader;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -7,7 +7,8 @@
|
|||||||
"client": [
|
"client": [
|
||||||
"EntityMixin",
|
"EntityMixin",
|
||||||
"ClientWorldMixin",
|
"ClientWorldMixin",
|
||||||
"StructureVoidBlockMixin"
|
"StructureVoidBlockMixin",
|
||||||
|
"GameRendererMixin"
|
||||||
],
|
],
|
||||||
"injectors": {
|
"injectors": {
|
||||||
"defaultRequire": 1
|
"defaultRequire": 1
|
||||||
|
|||||||
Reference in New Issue
Block a user