Class ScreenshotRecorder

java.lang.Object
net.minecraft.client.util.ScreenshotRecorder

@Environment(CLIENT) public class ScreenshotRecorder extends Object
A screenshot recorder takes screenshots and saves them into tga file format. It also holds a few utility methods for other types of screenshots.
Mappings:
Namespace Name
official ejq
intermediary net/minecraft/class_318
named net/minecraft/client/util/ScreenshotRecorder
  • Field Details

    • LOGGER

      private static final Logger LOGGER
      Mappings:
      Namespace Name Mixin selector
      official b Lejq;b:Lorg/slf4j/Logger;
      intermediary field_1974 Lnet/minecraft/class_318;field_1974:Lorg/slf4j/Logger;
      named LOGGER Lnet/minecraft/client/util/ScreenshotRecorder;LOGGER:Lorg/slf4j/Logger;
    • SCREENSHOTS_DIRECTORY

      public static final String SCREENSHOTS_DIRECTORY
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Lejq;a:Ljava/lang/String;
      intermediary field_41337 Lnet/minecraft/class_318;field_41337:Ljava/lang/String;
      named SCREENSHOTS_DIRECTORY Lnet/minecraft/client/util/ScreenshotRecorder;SCREENSHOTS_DIRECTORY:Ljava/lang/String;
    • unitHeight

      private int unitHeight
      Mappings:
      Namespace Name Mixin selector
      official c Lejq;c:I
      intermediary field_32157 Lnet/minecraft/class_318;field_32157:I
      named unitHeight Lnet/minecraft/client/util/ScreenshotRecorder;unitHeight:I
    • stream

      private final DataOutputStream stream
      Mappings:
      Namespace Name Mixin selector
      official d Lejq;d:Ljava/io/DataOutputStream;
      intermediary field_32158 Lnet/minecraft/class_318;field_32158:Ljava/io/DataOutputStream;
      named stream Lnet/minecraft/client/util/ScreenshotRecorder;stream:Ljava/io/DataOutputStream;
    • buffer

      private final byte[] buffer
      Mappings:
      Namespace Name Mixin selector
      official e Lejq;e:[B
      intermediary field_32159 Lnet/minecraft/class_318;field_32159:[B
      named buffer Lnet/minecraft/client/util/ScreenshotRecorder;buffer:[B
    • width

      private final int width
      Mappings:
      Namespace Name Mixin selector
      official f Lejq;f:I
      intermediary field_32160 Lnet/minecraft/class_318;field_32160:I
      named width Lnet/minecraft/client/util/ScreenshotRecorder;width:I
    • height

      private final int height
      Mappings:
      Namespace Name Mixin selector
      official g Lejq;g:I
      intermediary field_32161 Lnet/minecraft/class_318;field_32161:I
      named height Lnet/minecraft/client/util/ScreenshotRecorder;height:I
    • file

      private File file
      Mappings:
      Namespace Name Mixin selector
      official h Lejq;h:Ljava/io/File;
      intermediary field_32162 Lnet/minecraft/class_318;field_32162:Ljava/io/File;
      named file Lnet/minecraft/client/util/ScreenshotRecorder;file:Ljava/io/File;
  • Constructor Details

    • ScreenshotRecorder

      public ScreenshotRecorder(File gameDirectory, int width, int height, int unitHeight) throws IOException
      Creates a screenshot recorder for huge screenshots.
      Throws:
      IOException
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official <init> Lejq;<init>(Ljava/io/File;III)V
      intermediary <init> Lnet/minecraft/class_318;<init>(Ljava/io/File;III)V
      named <init> Lnet/minecraft/client/util/ScreenshotRecorder;<init>(Ljava/io/File;III)V
  • Method Details

    • saveScreenshot

      public static void saveScreenshot(File gameDirectory, Framebuffer framebuffer, Consumer<Text> messageReceiver)
      Mappings:
      Namespace Name Mixin selector
      official a Lejq;a(Ljava/io/File;Lecq;Ljava/util/function/Consumer;)V
      intermediary method_1659 Lnet/minecraft/class_318;method_1659(Ljava/io/File;Lnet/minecraft/class_276;Ljava/util/function/Consumer;)V
      named saveScreenshot Lnet/minecraft/client/util/ScreenshotRecorder;saveScreenshot(Ljava/io/File;Lnet/minecraft/client/gl/Framebuffer;Ljava/util/function/Consumer;)V
    • saveScreenshot

      public static void saveScreenshot(File gameDirectory, @Nullable @Nullable String fileName, Framebuffer framebuffer, Consumer<Text> messageReceiver)
      Mappings:
      Namespace Name Mixin selector
      official a Lejq;a(Ljava/io/File;Ljava/lang/String;Lecq;Ljava/util/function/Consumer;)V
      intermediary method_22690 Lnet/minecraft/class_318;method_22690(Ljava/io/File;Ljava/lang/String;Lnet/minecraft/class_276;Ljava/util/function/Consumer;)V
      named saveScreenshot Lnet/minecraft/client/util/ScreenshotRecorder;saveScreenshot(Ljava/io/File;Ljava/lang/String;Lnet/minecraft/client/gl/Framebuffer;Ljava/util/function/Consumer;)V
    • saveScreenshotInner

      private static void saveScreenshotInner(File gameDirectory, @Nullable @Nullable String fileName, Framebuffer framebuffer, Consumer<Text> messageReceiver)
      Mappings:
      Namespace Name Mixin selector
      official b Lejq;b(Ljava/io/File;Ljava/lang/String;Lecq;Ljava/util/function/Consumer;)V
      intermediary method_1662 Lnet/minecraft/class_318;method_1662(Ljava/io/File;Ljava/lang/String;Lnet/minecraft/class_276;Ljava/util/function/Consumer;)V
      named saveScreenshotInner Lnet/minecraft/client/util/ScreenshotRecorder;saveScreenshotInner(Ljava/io/File;Ljava/lang/String;Lnet/minecraft/client/gl/Framebuffer;Ljava/util/function/Consumer;)V
    • takeScreenshot

      public static NativeImage takeScreenshot(Framebuffer framebuffer)
      Mappings:
      Namespace Name Mixin selector
      official a Lejq;a(Lecq;)Lede;
      intermediary method_1663 Lnet/minecraft/class_318;method_1663(Lnet/minecraft/class_276;)Lnet/minecraft/class_1011;
      named takeScreenshot Lnet/minecraft/client/util/ScreenshotRecorder;takeScreenshot(Lnet/minecraft/client/gl/Framebuffer;)Lnet/minecraft/client/texture/NativeImage;
    • getScreenshotFilename

      private static File getScreenshotFilename(File directory)
      Mappings:
      Namespace Name Mixin selector
      official a Lejq;a(Ljava/io/File;)Ljava/io/File;
      intermediary method_1660 Lnet/minecraft/class_318;method_1660(Ljava/io/File;)Ljava/io/File;
      named getScreenshotFilename Lnet/minecraft/client/util/ScreenshotRecorder;getScreenshotFilename(Ljava/io/File;)Ljava/io/File;
    • getIntoBuffer

      public void getIntoBuffer(ByteBuffer data, int startWidth, int startHeight, int unitWidth, int unitHeight)
      Transports image data from data into buffer.
      Mappings:
      Namespace Name Mixin selector
      official a Lejq;a(Ljava/nio/ByteBuffer;IIII)V
      intermediary method_35711 Lnet/minecraft/class_318;method_35711(Ljava/nio/ByteBuffer;IIII)V
      named getIntoBuffer Lnet/minecraft/client/util/ScreenshotRecorder;getIntoBuffer(Ljava/nio/ByteBuffer;IIII)V
    • writeToStream

      public void writeToStream() throws IOException
      Writes the contents in the buffer into the stream.
      Throws:
      IOException
      Mappings:
      Namespace Name Mixin selector
      official a Lejq;a()V
      intermediary method_35710 Lnet/minecraft/class_318;method_35710()V
      named writeToStream Lnet/minecraft/client/util/ScreenshotRecorder;writeToStream()V
    • finish

      public File finish() throws IOException
      Finish taking the screenshot and return the complete tga file.
      Returns:
      the tga file
      Throws:
      IOException
      Mappings:
      Namespace Name Mixin selector
      official b Lejq;b()Ljava/io/File;
      intermediary method_35712 Lnet/minecraft/class_318;method_35712()Ljava/io/File;
      named finish Lnet/minecraft/client/util/ScreenshotRecorder;finish()Ljava/io/File;