VulkanShader_1.21.10-0.0.4-alpha.jar
Download file
package net.vulkanmod.mixin.render.frame;
import com.mojang.blaze3d.systems.CommandEncoder;
import com.mojang.blaze3d.textures.GpuTexture;
import net.minecraft.class_276;
import net.minecraft.class_310;
import net.vulkanmod.render.texture.ImageUploadHelper;
import net.vulkanmod.vulkan.Renderer;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.Redirect;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
@Mixin({class_310.class})
public class MinecraftMixin {
@Inject(
method = {"method_1523"},
at = {@At("HEAD")}
)
private void beginFrame(boolean bl, CallbackInfo ci) {
Renderer.getInstance().beginFrame();
Renderer.clearAttachments(16640);
}
@Redirect(
method = {"method_1523"},
at = @At(
value = "INVOKE",
target = "Lcom/mojang/blaze3d/systems/CommandEncoder;clearColorAndDepthTextures(Lcom/mojang/blaze3d/textures/GpuTexture;ILcom/mojang/blaze3d/textures/GpuTexture;D)V"
)
)
private void redirectClear(CommandEncoder instance, GpuTexture gpuTexture, int i, GpuTexture gpuTexture2, double v) {
ImageUploadHelper.INSTANCE.submitCommands();
}
@Redirect(
method = {"method_1523"},
at = @At(
value = "INVOKE",
target = "Lnet/minecraft/class_276;method_1237()V"
)
)
private void removeBlit(class_276 instance) {
}
@Redirect(
method = {"method_1523"},
at = @At(
value = "INVOKE",
target = "Ljava/lang/Thread;yield()V"
)
)
private void removeThreadYield() {
}
}
Download file