Yahoo India Web Search

Search results

  1. Satin API is a library that simplifies the use of Minecraft's data-driven shader system for modders. It does not replace Optifine or add any content, but supports Secrets No More mod and has a Fabric version.

  2. Satin API is a mod that simplifies the use of Minecraft's data-driven shader system. It allows modders to add graphical effects to their mods, such as super secret settings, mob vision, and spectral arrows.

  3. Satin API is a mod that helps modders with shader usage in Minecraft. It supports Fabric and Quilt loaders and is compatible with MC 1.20. Download the latest version from Modrinth.

    • Overview
    • Satin
    • Adding Satin to your project
    • Using Satin
    • Full documentation

    The Ladysnake maven is moving!

    As Jfrog is ending their free service for OSS projects, we have to move the maven repository before the 1st of July 2023. See below for the new maven instructions - you will have to update your buildscripts with the new URL before the cutoff date to avoid dependency resolution failures.

    A lightweight Fabric library for OpenGL shader usage.

    You can add the library by inserting the following in your build.gradle (Requires Loom 0.2.4+):

    Note 1: since MC 1.17 builds, the Satin dependency must be lowercase.

    Note 2: since MC 1.20.1 builds (1.14.0), the maven group changed from io.github.ladysnake to org.ladysnake.

    Note 3: since June 2023, the maven url changed from ladysnake.jfrog.io/artifactory/mods to maven.ladysnake.org/releases.

    You can then add the library version to your gradle.propertiesfile:

    You can find the current version of Satin in the releases tab of the repository on Github.

    Changes to Vanilla

    Simply having Satin installed alters the game in a few ways, mainly related to ShaderEffects. •Uniform fix: Using a vector of integers as a uniform crashes the game in Vanilla because of a bad copy paste. Satin redirects a call to upload the right buffer. •Shader locations: Satin patches shader processors to accept a resource domain in the specification of a program name and of a fragment/vertex shader file. •Custom Target Formats: Satin adds a satin:format property to post-process shader JSONs to allow shader targets to specify different formats to RGBA8. Supported formats are RGBA8, RGBA16, RGBA16F, and RGBA32F. •Readable depth: Satin offered access to a Framebuffer's depth texture before it was cool (superseded in 1.16). Satin does not set the shader in GameRenderer, except if a mod registers a PickEntityShaderCallback.

    Shader Management

    Satin's main feature is the Shader Effect management facility. ShaderEffect is a Minecraft class implementing data driven post processing shaders, with a few caveats. First, those shader effects are initialized immediately at construction, but they must be initialized after the game has finished loading to avoid gl errors. Then, they must be updated each time the game's resolution changes. Finally, they do not have any way of setting uniforms from external code. Satin can manage a shader effect for you, giving you a ManagedShaderEffect object. This shader effect is lazily initialized - although it can be initialized manually at any time. Initialized shader effects will be automatically reloaded each time the game's resolution changes, and during resource reloading. It also provides a number of access methods to set uniforms dynamically. Here is the whole java code for a mod that applies a basic shader to the game: For examples of json shader definitions, look for the assets/minecraft/shaders folder in the minecraft source (description of those shaders can be found on the Minecraft Wiki). There is also a real application of this library in Requiem.

    RenderLayer Utilities

    The ManagedFramebuffer and ManagedShaderProgram classes have methods to obtain clones of existing RenderLayer objects, with a custom Target. This target causes draw calls to happen on the ManagedFramebuffer for the former, or using the shader program for the latter. This can be notably used to render custom effects on entities and block entities. For examples of entities using those, see the relevant test mod. Regular blocks do not support custom render layers. For advanced shader materials, you should consider using an alternative renderer like Canvas.

    This repository's wiki provides documentation to write and use shaders with Satin API.

  4. Satin API is a Fabric library that helps modders with shader usage in Minecraft. It provides methods to access and manipulate shader data, such as uniforms, textures, and programs.

  5. Satin API Mod (1.21, 1.20.1) is a simple library allowing modders to add interesting graphical effects to their mods. Its main feature is to significantly simplify the use of Minecraft’s data-driven shader system (that is, the one used by super secret settings, mob vision, and spectral arrows).

  6. People also ask

  7. Satin API is a library that simplifies the use of Minecraft's data-driven shader system for modders. It does not replace Optifine or add any content, but supports Secrets No More mod and has a Fabric version.