fabric-rendering-v1-16.2.0+bee81f016f.jar

Download file
    package net.fabricmc.fabric.impl.client.rendering;

import com.mojang.blaze3d.pipeline.RenderPipeline;
import java.util.Optional;
import java.util.function.Supplier;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;

@Environment(EnvType.CLIENT)
public final class FabricRenderPipelineInternals {
   private static final ThreadLocal<Optional<Boolean>> SCOPED_SNIPPET_USE_PIPELINE_VERTEX_FORMAT_FOR_GUI = ThreadLocal.withInitial(Optional::empty);

   private FabricRenderPipelineInternals() {
   }

   public static RenderPipeline.Snippet withSnippetUsePipelineVertexFormatForGui(Supplier<RenderPipeline.Snippet> factory, Optional<Boolean> usePipelineVertexFormat) {
      Optional<Boolean> original = (Optional)SCOPED_SNIPPET_USE_PIPELINE_VERTEX_FORMAT_FOR_GUI.get();

      RenderPipeline.Snippet var3;
      try {
         SCOPED_SNIPPET_USE_PIPELINE_VERTEX_FORMAT_FOR_GUI.set(usePipelineVertexFormat);
         var3 = (RenderPipeline.Snippet)factory.get();
      } finally {
         if (original.isEmpty()) {
            SCOPED_SNIPPET_USE_PIPELINE_VERTEX_FORMAT_FOR_GUI.remove();
         } else {
            SCOPED_SNIPPET_USE_PIPELINE_VERTEX_FORMAT_FOR_GUI.set(original);
         }

      }

      return var3;
   }

   public static Optional<Boolean> getScopedUsePipelineVertexFormatForGui() {
      return (Optional)SCOPED_SNIPPET_USE_PIPELINE_VERTEX_FORMAT_FOR_GUI.get();
   }
}
    
Download file