Velvet
Velvet is a universal library for creating and using custom OpenGL shaders in Minecraft, built on Satin foundation with multi-loader support.
Important note: While we strongly recommend supporting the original Satin developers, please do not send them bug reports if you are using Velvet.
Documentation and Differences
All necessary documentation is available in the Satin wiki. It's worth noting that some class and method names have been modified in Velvet to align with Mojang's naming system.
Adding Velvet to Your Project
If you are working exclusively with Fabric, we recommend using the original Satin.
Start by adding the following repository to your build.gradle file:
repositories {
maven {
name = "Up-Mods & Cammie's Corner"
url = "https://maven.uuid.gg/releases"
}
}
For Fabric (skip this section if using only NeoForge):
dependencies {
modImplementation "dev.cammiescorner.velvet:Velvet-Common:${velvet_version}"
modImplementation "dev.cammiescorner.velvet:Velvet-Fabric:${velvet_version}"
// For including Velvet in the main jar file
include "dev.cammiescorner.velvet:Velvet-Common:${velvet_version}"
include "dev.cammiescorner.velvet:Velvet-Fabric:${velvet_version}"
}
For NeoForge:
dependencies {
implementation "dev.cammiescorner.velvet:Velvet-Common:${velvet_version}"
implementation "dev.cammiescorner.velvet:Velvet-NeoForge:${velvet_version}"
// For including Velvet in the main jar file
jarJar(dev.cammiescorner.velvet:Velvet-Common:${velvet_version}) {
transitive = false
version {
strictly "[${velvet_version},)"
prefer ${velvet_version}
}
}
jarJar(dev.cammiescorner.velvet:Velvet-NeoForge:${velvet_version}) {
transitive = false
version {
strictly "[${velvet_version},)"
prefer ${velvet_version}
}
}
}
Specifying Version
Add the library version to the gradle.properties file:
# Velvet version
velvet_version=0.x.x
Or to the libs.versions.toml file if you are using one:
# Velvet version
velvet_version = "0.x.x"
Current information about the latest Velvet releases can be found on the GitHub Releases page.