Рефактор, вычисление объёмов вынесено в отдельный от render пакет
This commit is contained in:
@@ -13,10 +13,10 @@ import su.divan2000.veila.client.gl.FullscreenQuad;
|
|||||||
import su.divan2000.veila.client.gl.GLProgram;
|
import su.divan2000.veila.client.gl.GLProgram;
|
||||||
import su.divan2000.veila.client.gl.GLShader;
|
import su.divan2000.veila.client.gl.GLShader;
|
||||||
import su.divan2000.veila.client.gl.ResourceUtil;
|
import su.divan2000.veila.client.gl.ResourceUtil;
|
||||||
import su.divan2000.veila.client.render.fog.FogLightVolume;
|
import su.divan2000.veila.client.simulation.FogLightVolume;
|
||||||
import su.divan2000.veila.client.render.fog.FogSimulationManager;
|
import su.divan2000.veila.client.simulation.FogSimulationManager;
|
||||||
import su.divan2000.veila.client.render.fog.FogSystem;
|
import su.divan2000.veila.client.simulation.FogSystem;
|
||||||
import su.divan2000.veila.client.render.fog.FogWorldVolume;
|
import su.divan2000.veila.client.simulation.FogWorldVolume;
|
||||||
|
|
||||||
import java.nio.FloatBuffer;
|
import java.nio.FloatBuffer;
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
import net.minecraft.registry.entry.RegistryEntry;
|
import net.minecraft.registry.entry.RegistryEntry;
|
||||||
import net.minecraft.world.biome.Biome;
|
import net.minecraft.world.biome.Biome;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
import net.minecraft.client.MinecraftClient;
|
import net.minecraft.client.MinecraftClient;
|
||||||
import net.minecraft.registry.entry.RegistryEntry;
|
import net.minecraft.registry.entry.RegistryEntry;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
import org.lwjgl.BufferUtils;
|
import org.lwjgl.BufferUtils;
|
||||||
import org.lwjgl.opengl.*;
|
import org.lwjgl.opengl.*;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
public record FogBlockProperties(
|
public record FogBlockProperties(
|
||||||
boolean solid,
|
boolean solid,
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.BlockState;
|
import net.minecraft.block.BlockState;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
import net.minecraft.block.BlockState;
|
import net.minecraft.block.BlockState;
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
import net.minecraft.block.BlockState;
|
import net.minecraft.block.BlockState;
|
||||||
|
|
||||||
+1
-3
@@ -1,6 +1,5 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
import org.lwjgl.BufferUtils;
|
|
||||||
import org.lwjgl.opengl.GL11;
|
import org.lwjgl.opengl.GL11;
|
||||||
import org.lwjgl.opengl.GL12;
|
import org.lwjgl.opengl.GL12;
|
||||||
import org.lwjgl.opengl.GL15;
|
import org.lwjgl.opengl.GL15;
|
||||||
@@ -8,7 +7,6 @@ import org.lwjgl.opengl.GL30;
|
|||||||
import org.lwjgl.opengl.GL31;
|
import org.lwjgl.opengl.GL31;
|
||||||
|
|
||||||
import java.nio.ByteBuffer;
|
import java.nio.ByteBuffer;
|
||||||
import java.nio.FloatBuffer;
|
|
||||||
|
|
||||||
public final class FogDensityTextures {
|
public final class FogDensityTextures {
|
||||||
|
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
import net.minecraft.client.MinecraftClient;
|
import net.minecraft.client.MinecraftClient;
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
import net.minecraft.client.MinecraftClient;
|
import net.minecraft.client.MinecraftClient;
|
||||||
import net.minecraft.util.math.ChunkSectionPos;
|
import net.minecraft.util.math.ChunkSectionPos;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
import java.util.concurrent.atomic.AtomicLongArray;
|
import java.util.concurrent.atomic.AtomicLongArray;
|
||||||
|
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
import org.lwjgl.BufferUtils;
|
import org.lwjgl.BufferUtils;
|
||||||
import org.lwjgl.opengl.GL11;
|
import org.lwjgl.opengl.GL11;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
import java.util.ArrayDeque;
|
import java.util.ArrayDeque;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
import su.divan2000.veila.client.gl.FullscreenQuad;
|
import su.divan2000.veila.client.gl.FullscreenQuad;
|
||||||
import su.divan2000.veila.client.gl.GLProgram;
|
import su.divan2000.veila.client.gl.GLProgram;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
import net.minecraft.client.MinecraftClient;
|
import net.minecraft.client.MinecraftClient;
|
||||||
|
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
import org.lwjgl.BufferUtils;
|
import org.lwjgl.BufferUtils;
|
||||||
import org.lwjgl.opengl.GL11;
|
import org.lwjgl.opengl.GL11;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package su.divan2000.veila.client.render.fog;
|
package su.divan2000.veila.client.simulation;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Простой Perlin noise без зависимостей от Minecraft API.
|
* Простой Perlin noise без зависимостей от Minecraft API.
|
||||||
@@ -8,7 +8,7 @@ import org.spongepowered.asm.mixin.injection.At;
|
|||||||
import org.spongepowered.asm.mixin.injection.Inject;
|
import org.spongepowered.asm.mixin.injection.Inject;
|
||||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||||
import su.divan2000.veila.client.render.PostProcessingManager;
|
import su.divan2000.veila.client.render.PostProcessingManager;
|
||||||
import su.divan2000.veila.client.render.fog.FogSystem;
|
import su.divan2000.veila.client.simulation.FogSystem;
|
||||||
|
|
||||||
@Mixin(GameRenderer.class)
|
@Mixin(GameRenderer.class)
|
||||||
public class GameRendererMixin {
|
public class GameRendererMixin {
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ package su.divan2000.veila.mixin.client;
|
|||||||
import net.minecraft.util.math.ChunkSectionPos;
|
import net.minecraft.util.math.ChunkSectionPos;
|
||||||
import net.minecraft.world.LightType;
|
import net.minecraft.world.LightType;
|
||||||
import net.minecraft.world.chunk.ChunkNibbleArray;
|
import net.minecraft.world.chunk.ChunkNibbleArray;
|
||||||
import net.minecraft.world.chunk.light.ChunkLightProvider;
|
|
||||||
import net.minecraft.world.chunk.light.LightStorage;
|
import net.minecraft.world.chunk.light.LightStorage;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
import org.spongepowered.asm.mixin.Mixin;
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
@@ -11,7 +10,7 @@ import org.spongepowered.asm.mixin.Shadow;
|
|||||||
import org.spongepowered.asm.mixin.injection.At;
|
import org.spongepowered.asm.mixin.injection.At;
|
||||||
import org.spongepowered.asm.mixin.injection.Inject;
|
import org.spongepowered.asm.mixin.injection.Inject;
|
||||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||||
import su.divan2000.veila.client.render.fog.FogLightStreamer;
|
import su.divan2000.veila.client.simulation.FogLightStreamer;
|
||||||
|
|
||||||
@Mixin(LightStorage.class)
|
@Mixin(LightStorage.class)
|
||||||
public class LightStorageMixin {
|
public class LightStorageMixin {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import org.spongepowered.asm.mixin.Mixin;
|
|||||||
import org.spongepowered.asm.mixin.injection.At;
|
import org.spongepowered.asm.mixin.injection.At;
|
||||||
import org.spongepowered.asm.mixin.injection.Inject;
|
import org.spongepowered.asm.mixin.injection.Inject;
|
||||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||||
import su.divan2000.veila.client.render.fog.FogSystem;
|
import su.divan2000.veila.client.simulation.FogSystem;
|
||||||
|
|
||||||
@Mixin(MinecraftClient.class)
|
@Mixin(MinecraftClient.class)
|
||||||
public class MinecraftClientMixin {
|
public class MinecraftClientMixin {
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import org.spongepowered.asm.mixin.Mixin;
|
|||||||
import org.spongepowered.asm.mixin.injection.At;
|
import org.spongepowered.asm.mixin.injection.At;
|
||||||
import org.spongepowered.asm.mixin.injection.Inject;
|
import org.spongepowered.asm.mixin.injection.Inject;
|
||||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
|
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
|
||||||
import su.divan2000.veila.client.render.fog.FogChunkStreamer;
|
import su.divan2000.veila.client.simulation.FogChunkStreamer;
|
||||||
|
|
||||||
@Mixin(WorldChunk.class)
|
@Mixin(WorldChunk.class)
|
||||||
public class WorldChunkMixin {
|
public class WorldChunkMixin {
|
||||||
|
|||||||
Reference in New Issue
Block a user