From bd58ced0e4023ec1a8a1187fe84b059cb800c058 Mon Sep 17 00:00:00 2001 From: SuperMartijn642 Date: Sat, 24 Jul 2021 16:39:00 +0200 Subject: [PATCH] Expose RenderStateShard inner classes (#7895) In 1.17, all of the inner classes of `RenderStateShard` (`RenderStateShard.OverlayStateShard`, `RenderStateShard.WriteMaskStateShard`, etc.) have been changed to protected. These classes are needed however to create new `RenderType.CompositeRenderType`'s using `RenderType.CompositeState.CompositeStateBuilder`. Since these are protected inner classes, their constructors also can't be directly be obtained using `ObfuscationReflectionHelper`. Currently, any mod using custom `RenderType`'s will have to either: - add their own access transformer for the inner classes, or - extend `RenderStateShard` to access `RenderStateShard`'s inner classes, and extend `RenderType` to access `RenderType.CompositeRenderType` This PR changes the visibility of `RenderStateShard`'s inner classes to public in Forge's `accesstransformer.cfg`. --- .../resources/META-INF/accesstransformer.cfg | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/main/resources/META-INF/accesstransformer.cfg b/src/main/resources/META-INF/accesstransformer.cfg index 0d967d9235..bfc0edd0df 100644 --- a/src/main/resources/META-INF/accesstransformer.cfg +++ b/src/main/resources/META-INF/accesstransformer.cfg @@ -75,6 +75,20 @@ protected-f net.minecraft.client.renderer.RenderStateShard f_110131_ # setupStat public net.minecraft.client.renderer.RenderStateShard$TextureStateShard protected-f net.minecraft.client.renderer.RenderStateShard$TextureStateShard f_110329_ # blur protected-f net.minecraft.client.renderer.RenderStateShard$TextureStateShard f_110330_ # mipmap +public net.minecraft.client.renderer.RenderStateShard$BooleanStateShard +public net.minecraft.client.renderer.RenderStateShard$CullStateShard +public net.minecraft.client.renderer.RenderStateShard$DepthTestStateShard +public net.minecraft.client.renderer.RenderStateShard$EmptyTextureStateShard +public net.minecraft.client.renderer.RenderStateShard$LayeringStateShard +public net.minecraft.client.renderer.RenderStateShard$LightmapStateShard +public net.minecraft.client.renderer.RenderStateShard$MultiTextureStateShard +public net.minecraft.client.renderer.RenderStateShard$OffsetTexturingStateShard +public net.minecraft.client.renderer.RenderStateShard$OutputStateShard +public net.minecraft.client.renderer.RenderStateShard$OverlayStateShard +public net.minecraft.client.renderer.RenderStateShard$ShaderStateShard +public net.minecraft.client.renderer.RenderStateShard$TransparencyStateShard +public net.minecraft.client.renderer.RenderStateShard$TexturingStateShard +public net.minecraft.client.renderer.RenderStateShard$WriteMaskStateShard public net.minecraft.client.renderer.RenderType m_173215_(Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormat;Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;IZZLnet/minecraft/client/renderer/RenderType$CompositeState;)Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; # create public net.minecraft.client.renderer.RenderType$CompositeState public net.minecraft.client.renderer.block.model.BlockElement m_111320_(Lnet/minecraft/core/Direction;)[F # uvsByFace @@ -398,4 +412,4 @@ public net.minecraft.world.level.newbiome.layer.Layers m_76729_(JLnet/minecraft/ protected net.minecraft.world.level.portal.PortalForcer f_77648_ # level public net.minecraft.world.level.storage.LevelResource (Ljava/lang/String;)V # constructor private-f net.minecraft.world.level.storage.loot.LootPool f_79028_ # rolls -private-f net.minecraft.world.level.storage.loot.LootPool f_79029_ # bonusRolls \ No newline at end of file +private-f net.minecraft.world.level.storage.loot.LootPool f_79029_ # bonusRolls