41 lines
1.7 KiB
Java
41 lines
1.7 KiB
Java
package com.mojang.blaze3d.platform;
|
|
|
|
import com.mojang.blaze3d.systems.RenderSystem;
|
|
import net.fabricmc.api.EnvType;
|
|
import net.fabricmc.api.Environment;
|
|
import org.joml.Quaternionf;
|
|
import org.joml.Vector3f;
|
|
|
|
@Environment(EnvType.CLIENT)
|
|
public class Lighting {
|
|
private static final Vector3f DIFFUSE_LIGHT_0 = new Vector3f(0.2F, 1.0F, -0.7F).normalize();
|
|
private static final Vector3f DIFFUSE_LIGHT_1 = new Vector3f(-0.2F, 1.0F, 0.7F).normalize();
|
|
private static final Vector3f NETHER_DIFFUSE_LIGHT_0 = new Vector3f(0.2F, 1.0F, -0.7F).normalize();
|
|
private static final Vector3f NETHER_DIFFUSE_LIGHT_1 = new Vector3f(-0.2F, -1.0F, 0.7F).normalize();
|
|
private static final Vector3f INVENTORY_DIFFUSE_LIGHT_0 = new Vector3f(0.2F, -1.0F, 1.0F).normalize();
|
|
private static final Vector3f INVENTORY_DIFFUSE_LIGHT_1 = new Vector3f(-0.2F, -1.0F, 0.0F).normalize();
|
|
|
|
public static void setupNetherLevel() {
|
|
RenderSystem.setupLevelDiffuseLighting(NETHER_DIFFUSE_LIGHT_0, NETHER_DIFFUSE_LIGHT_1);
|
|
}
|
|
|
|
public static void setupLevel() {
|
|
RenderSystem.setupLevelDiffuseLighting(DIFFUSE_LIGHT_0, DIFFUSE_LIGHT_1);
|
|
}
|
|
|
|
public static void setupForFlatItems() {
|
|
RenderSystem.setupGuiFlatDiffuseLighting(DIFFUSE_LIGHT_0, DIFFUSE_LIGHT_1);
|
|
}
|
|
|
|
public static void setupFor3DItems() {
|
|
RenderSystem.setupGui3DDiffuseLighting(DIFFUSE_LIGHT_0, DIFFUSE_LIGHT_1);
|
|
}
|
|
|
|
public static void setupForEntityInInventory() {
|
|
RenderSystem.setShaderLights(INVENTORY_DIFFUSE_LIGHT_0, INVENTORY_DIFFUSE_LIGHT_1);
|
|
}
|
|
|
|
public static void setupForEntityInInventory(Quaternionf quaternion) {
|
|
RenderSystem.setShaderLights(quaternion.transform(INVENTORY_DIFFUSE_LIGHT_0, new Vector3f()), quaternion.transform(INVENTORY_DIFFUSE_LIGHT_1, new Vector3f()));
|
|
}
|
|
}
|