VulkanMod
VulkanMod copied to clipboard
Weird mixin error, maybe you need to support renderer API
Describe the bug
A mixin error happens in Meteor client only when using VulkanMod.
Expected Lnet/fabricmc/fabric/impl/client/indigo/renderer/mesh/MutableQuadViewImpl;Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;, but found (Lnet/fabricmc/fabric/impl/client/indigo/renderer/mesh/MutableQuadViewImpl;ZLorg/spongepowered/asm/mixin/injection/callback/CallbackInfo; in net.fabricmc.fabric.impl.client.indigo.renderer.render.AbstractBlockRenderContext.renderQuad. Are you adding a bool to renderQuad?
Mixin: https://github.com/MeteorDevelopment/meteor-client/blob/master/src/main/java/meteordevelopment/meteorclient/mixin/indigo/AbstractBlockRenderContextMixin.java
@Mixin(AbstractBlockRenderContext.class)
public abstract class AbstractBlockRenderContextMixin {
@Final @Shadow(remap = false) protected BlockRenderInfo blockInfo;
@Inject(method = "renderQuad", at = @At(value = "INVOKE", target = "Lnet/fabricmc/fabric/impl/client/indigo/renderer/render/AbstractBlockRenderContext;bufferQuad(Lnet/fabricmc/fabric/impl/client/indigo/renderer/mesh/MutableQuadViewImpl;Lnet/minecraft/client/render/VertexConsumer;)V"), cancellable = true)
private void onBufferQuad(MutableQuadViewImpl quad, boolean isVanilla, CallbackInfo ci) {
Steps to reproduce
- Install VulkanMod and Meteor client
- Launch the game
Log files
[17:41:42] [Render thread/WARN]: Mixin apply for mod meteor-client failed meteor-client-indigo.mixins.json:AbstractBlockRenderContextMixin from mod meteor-client ->
net.fabricmc.fabric.impl.client.indigo.renderer.render.AbstractBlockRenderContext:
org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException
Invalid descriptor on meteor-client-indigo.mixins.json:AbstractBlockRenderContextMixin
from mod meteor-client->@Inject::onBufferQuad(Lnet/fabricmc/fabric/impl/client/indigo/renderer/mesh/MutableQuadViewImpl;ZLorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V!
Expected (Lnet/fabricmc/fabric/impl/client/indigo/renderer/mesh/MutableQuadViewImpl;Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V
but found (Lnet/fabricmc/fabric/impl/client/indigo/renderer/mesh/MutableQuadViewImpl;ZLorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V
[ -> Inject -> meteor-client-indigo.mixins.json:AbstractBlockRenderContextMixin from mod meteor-client->@Inject::onBufferQuad(Lnet/fabricmc/fabric/impl/client/indigo/renderer/mesh/MutableQuadViewImpl;ZLorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V]
org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException: Invalid descriptor on meteor-client-indigo.mixins.json:AbstractBlockRenderContextMixin from mod meteor-client->@Inject::onBufferQuad(Lnet/fabricmc/fabric/impl/client/indigo/renderer/mesh/MutableQuadViewImpl;ZLorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V! Expected (Lnet/fabricmc/fabric/impl/client/indigo/renderer/mesh/MutableQuadViewImpl;Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V but found (Lnet/fabricmc/fabric/impl/client/indigo/renderer/mesh/MutableQuadViewImpl;ZLorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V [ -> Inject -> meteor-client-indigo.mixins.json:AbstractBlockRenderContextMixin from mod meteor-client->@Inject::onBufferQuad(Lnet/fabricmc/fabric/impl/client/indigo/renderer/mesh/MutableQuadViewImpl;ZLorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V]
Meteor Client is incompatible.
Meteor Client is incompatible.
I don't think it uses OpenGL? Could VulkanMod support a rendering API?
The signature should be (Lnet/fabricmc/fabric/impl/client/indigo/renderer/mesh/MutableQuadViewImpl;Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V, but it isn't with VulkanMod:
https://github.com/FabricMC/fabric/blob/7363c44ea9c96c8c57087a07d86fe936fb86104e/fabric-renderer-indigo/src/client/java/net/fabricmc/fabric/impl/client/indigo/renderer/render/AbstractBlockRenderContext.java#L96
FabricAPI implementation is slowly progressing, but I suspect that Meteorclient tries to change way too much for VulkanMod to work. Besides, we don't support third party clients, especially hack clients. This can be closed.
This can be closed as well.