mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2026-04-06 07:46:08 +00:00
Cleanup
This commit is contained in:
@@ -160,8 +160,7 @@ public class IrisEngine extends BlockPopulator implements Engine {
|
||||
Hunk<BlockData> blocks = vblocks;
|
||||
|
||||
|
||||
switch(getDimension().getTerrainMode())
|
||||
{
|
||||
switch (getDimension().getTerrainMode()) {
|
||||
case NORMAL -> {
|
||||
getFramework().getEngineParallax().generateParallaxArea(x >> 4, z >> 4);
|
||||
getFramework().getBiomeActuator().actuate(x, z, vbiomes);
|
||||
|
||||
@@ -117,7 +117,7 @@ public class IrisEngineFramework implements EngineFramework {
|
||||
|
||||
@Override
|
||||
public EngineActuator<BlockData> getTerrainActuator() {
|
||||
return switch (getEngine().getDimension().getTerrainMode()){
|
||||
return switch (getEngine().getDimension().getTerrainMode()) {
|
||||
case NORMAL -> getTerrainNormalActuator();
|
||||
case ISLANDS -> getTerrainIslandActuator();
|
||||
};
|
||||
|
||||
@@ -22,7 +22,6 @@ import com.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap;
|
||||
import com.volmit.iris.engine.framework.Engine;
|
||||
import com.volmit.iris.engine.framework.EngineParallaxManager;
|
||||
import com.volmit.iris.engine.object.IrisFeaturePositional;
|
||||
import com.volmit.iris.engine.stream.utility.CachedStream2D;
|
||||
import com.volmit.iris.util.collection.KList;
|
||||
import com.volmit.iris.util.scheduling.IrisLock;
|
||||
import lombok.Getter;
|
||||
|
||||
@@ -18,13 +18,11 @@
|
||||
|
||||
package com.volmit.iris.engine.actuator;
|
||||
|
||||
import com.volmit.iris.Iris;
|
||||
import com.volmit.iris.engine.framework.Engine;
|
||||
import com.volmit.iris.engine.framework.EngineAssignedActuator;
|
||||
import com.volmit.iris.engine.hunk.Hunk;
|
||||
import com.volmit.iris.engine.object.IrisBiome;
|
||||
import com.volmit.iris.util.collection.KList;
|
||||
import com.volmit.iris.util.math.M;
|
||||
import com.volmit.iris.util.math.RNG;
|
||||
import com.volmit.iris.util.scheduling.PrecisionStopwatch;
|
||||
import lombok.Getter;
|
||||
@@ -64,13 +62,11 @@ public class IrisTerrainIslandActuator extends EngineAssignedActuator<BlockData>
|
||||
realX = (int) modX(xf + x);
|
||||
realZ = (int) modZ(zf + z);
|
||||
|
||||
if(getComplex().getIslandStream().get(realX, realZ))
|
||||
{
|
||||
if (getComplex().getIslandStream().get(realX, realZ)) {
|
||||
surface = getComplex().getIslandHeightStream().get(realX, realZ).intValue();
|
||||
depth = getComplex().getIslandDepthStream().get(realX, realZ).intValue();
|
||||
|
||||
for(i = surface - depth; i < surface; i++)
|
||||
{
|
||||
for (i = surface - depth; i < surface; i++) {
|
||||
h.set(xf, i, zf, BEDROCK);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,7 +22,6 @@ import com.google.common.util.concurrent.AtomicDouble;
|
||||
import com.google.gson.Gson;
|
||||
import com.volmit.iris.Iris;
|
||||
import com.volmit.iris.core.IrisDataManager;
|
||||
import com.volmit.iris.engine.hunk.storage.AtomicDoubleHunk;
|
||||
import com.volmit.iris.engine.object.IrisRegistrant;
|
||||
import com.volmit.iris.util.collection.KList;
|
||||
import com.volmit.iris.util.collection.KMap;
|
||||
|
||||
@@ -31,14 +31,12 @@ import com.volmit.iris.engine.data.DirectWorldWriter;
|
||||
import com.volmit.iris.engine.data.chunk.TerrainChunk;
|
||||
import com.volmit.iris.engine.hunk.Hunk;
|
||||
import com.volmit.iris.engine.object.IrisBiome;
|
||||
import com.volmit.iris.engine.object.IrisBiomeCustom;
|
||||
import com.volmit.iris.engine.object.IrisDimension;
|
||||
import com.volmit.iris.engine.object.IrisPosition;
|
||||
import com.volmit.iris.engine.parallel.BurstExecutor;
|
||||
import com.volmit.iris.engine.parallel.MultiBurst;
|
||||
import com.volmit.iris.util.collection.KList;
|
||||
import com.volmit.iris.util.collection.KMap;
|
||||
import com.volmit.iris.util.collection.KSet;
|
||||
import com.volmit.iris.util.fakenews.FakeWorld;
|
||||
import com.volmit.iris.util.format.C;
|
||||
import com.volmit.iris.util.format.Form;
|
||||
@@ -464,8 +462,7 @@ public class EngineCompositeGenerator extends ChunkGenerator implements IrisAcce
|
||||
generated++;
|
||||
ps.end();
|
||||
|
||||
if(IrisSettings.get().getGeneral().isDebug())
|
||||
{
|
||||
if (IrisSettings.get().getGeneral().isDebug()) {
|
||||
Iris.debug("Chunk " + C.GREEN + x + "," + z + C.LIGHT_PURPLE + " in " + C.YELLOW + Form.duration(ps.getMillis(), 2) + C.LIGHT_PURPLE + " Rate: " + C.BLUE + Form.f(getGeneratedPerSecond(), 0) + "/s");
|
||||
}
|
||||
|
||||
|
||||
@@ -199,11 +199,10 @@ public interface EngineParallaxManager extends DataProvider, IObjectPlacer {
|
||||
IrisLock getFeatureLock();
|
||||
|
||||
default void forEachFeature(double x, double z, Consumer<IrisFeaturePositional> f) {
|
||||
long key = Cache.key(((int)x)>>4, ((int)z) >> 4);
|
||||
long key = Cache.key(((int) x) >> 4, ((int) z) >> 4);
|
||||
|
||||
for(IrisFeaturePositional ipf : getFeatureCache().compute(key, (ke, v) -> {
|
||||
if(v != null)
|
||||
{
|
||||
for (IrisFeaturePositional ipf : getFeatureCache().compute(key, (ke, v) -> {
|
||||
if (v != null) {
|
||||
return v;
|
||||
}
|
||||
|
||||
@@ -226,8 +225,7 @@ public interface EngineParallaxManager extends DataProvider, IObjectPlacer {
|
||||
ParallaxChunkMeta m = getParallaxAccess().getMetaR(i + cx, j + cz);
|
||||
|
||||
try {
|
||||
synchronized (m.getFeatures())
|
||||
{
|
||||
synchronized (m.getFeatures()) {
|
||||
for (IrisFeaturePositional k : m.getFeatures()) {
|
||||
if (k.shouldFilter(x, z)) {
|
||||
pos.add(k);
|
||||
@@ -244,16 +242,14 @@ public interface EngineParallaxManager extends DataProvider, IObjectPlacer {
|
||||
getFeatureLock().unlock();
|
||||
|
||||
return pos;
|
||||
}))
|
||||
{
|
||||
})) {
|
||||
f.accept(ipf);
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("SynchronizationOnLocalVariableOrMethodParameter")
|
||||
default void generateParallaxArea(int x, int z) {
|
||||
if(!getEngine().getDimension().isPlaceObjects())
|
||||
{
|
||||
if (!getEngine().getDimension().isPlaceObjects()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -354,9 +354,8 @@ public class IrisInterpolation {
|
||||
//@done
|
||||
}
|
||||
|
||||
public static double getTrilinear(int x, int y, int z, double rad, NoiseProvider3 n)
|
||||
{
|
||||
return getTrilinear(x,y,z,rad,rad,rad,n);
|
||||
public static double getTrilinear(int x, int y, int z, double rad, NoiseProvider3 n) {
|
||||
return getTrilinear(x, y, z, rad, rad, rad, n);
|
||||
}
|
||||
|
||||
public static double getTrilinear(int x, int y, int z, double radx, double rady, double radz, NoiseProvider3 n) {
|
||||
@@ -387,7 +386,7 @@ public class IrisInterpolation {
|
||||
}
|
||||
|
||||
public static double getTricubic(int x, int y, int z, double rad, NoiseProvider3 n) {
|
||||
return getTricubic(x,y,z,rad,rad,rad,n);
|
||||
return getTricubic(x, y, z, rad, rad, rad, n);
|
||||
}
|
||||
|
||||
public static double getTricubic(int x, int y, int z, double radx, double rady, double radz, NoiseProvider3 n) {
|
||||
@@ -841,19 +840,19 @@ public class IrisInterpolation {
|
||||
}
|
||||
|
||||
public static double getNoise3D(InterpolationMethod3D method, int x, int y, int z, double radx, double rady, double radz, NoiseProvider3 n) {
|
||||
return switch (method){
|
||||
case TRILINEAR -> getTrilinear(x,y,z,radx, rady, radz, n);
|
||||
case TRICUBIC -> getTricubic(x,y,z,radx, rady, radz, n);
|
||||
case TRIHERMITE -> getTrihermite(x,y,z,radx, rady, radz, n);
|
||||
return switch (method) {
|
||||
case TRILINEAR -> getTrilinear(x, y, z, radx, rady, radz, n);
|
||||
case TRICUBIC -> getTricubic(x, y, z, radx, rady, radz, n);
|
||||
case TRIHERMITE -> getTrihermite(x, y, z, radx, rady, radz, n);
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
public static double getNoise3D(InterpolationMethod3D method, int x, int y, int z, double rad, NoiseProvider3 n) {
|
||||
return switch (method){
|
||||
case TRILINEAR -> getTrilinear(x,y,z,rad, rad, rad, n);
|
||||
case TRICUBIC -> getTricubic(x,y,z,rad, rad, rad, n);
|
||||
case TRIHERMITE -> getTrihermite(x,y,z,rad, rad, rad, n);
|
||||
return switch (method) {
|
||||
case TRILINEAR -> getTrilinear(x, y, z, rad, rad, rad, n);
|
||||
case TRICUBIC -> getTricubic(x, y, z, rad, rad, rad, n);
|
||||
case TRIHERMITE -> getTrihermite(x, y, z, rad, rad, rad, n);
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -25,8 +25,6 @@ import com.volmit.iris.engine.framework.EngineAssignedModifier;
|
||||
import com.volmit.iris.engine.hunk.Hunk;
|
||||
import com.volmit.iris.engine.object.IrisBiome;
|
||||
import com.volmit.iris.engine.object.common.CaveResult;
|
||||
import com.volmit.iris.engine.parallel.BurstExecutor;
|
||||
import com.volmit.iris.engine.parallel.MultiBurst;
|
||||
import com.volmit.iris.util.math.RNG;
|
||||
import com.volmit.iris.util.scheduling.PrecisionStopwatch;
|
||||
import org.bukkit.Material;
|
||||
|
||||
@@ -450,15 +450,13 @@ public class IrisBiome extends IrisRegistrant implements IRare {
|
||||
|
||||
int gg = 0;
|
||||
|
||||
for(IrisObjectPlacement i : getObjects())
|
||||
{
|
||||
for(IrisObject j : data.getObjectLoader().loadAll(i.getPlace()))
|
||||
{
|
||||
for (IrisObjectPlacement i : getObjects()) {
|
||||
for (IrisObject j : data.getObjectLoader().loadAll(i.getPlace())) {
|
||||
gg = Math.max(gg, j.getH());
|
||||
}
|
||||
}
|
||||
|
||||
return maxHeight + gg+3;
|
||||
return maxHeight + gg + 3;
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -49,8 +49,7 @@ public class IrisStyledRange {
|
||||
return min;
|
||||
}
|
||||
|
||||
if(style.isFlat())
|
||||
{
|
||||
if (style.isFlat()) {
|
||||
return M.lerp(min, max, 0.5);
|
||||
}
|
||||
|
||||
|
||||
@@ -30,7 +30,6 @@ import lombok.Data;
|
||||
import java.io.DataInputStream;
|
||||
import java.io.DataOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.util.concurrent.CopyOnWriteArrayList;
|
||||
import java.util.function.Function;
|
||||
|
||||
@AllArgsConstructor
|
||||
|
||||
@@ -65,13 +65,11 @@ public interface ProceduralStream<T> extends ProceduralLayer, Interpolated<T> {
|
||||
return new FunctionStream<>(f, f2, helper);
|
||||
}
|
||||
|
||||
default ProceduralStream<Boolean> chance(double chance)
|
||||
{
|
||||
default ProceduralStream<Boolean> chance(double chance) {
|
||||
return of((x, z) -> getDouble(x, z) < chance, Interpolated.BOOLEAN);
|
||||
}
|
||||
|
||||
default ProceduralStream<Boolean> seededChance(RNG brng, long rootSeed, double chance)
|
||||
{
|
||||
default ProceduralStream<Boolean> seededChance(RNG brng, long rootSeed, double chance) {
|
||||
RNG rng = brng.nextParallelRNG(rootSeed - 3995L);
|
||||
return of((x, z) -> {
|
||||
double ch = getDouble(x, z);
|
||||
@@ -365,11 +363,10 @@ public interface ProceduralStream<T> extends ProceduralLayer, Interpolated<T> {
|
||||
return new FittedStream<T>(this, min, max);
|
||||
}
|
||||
|
||||
default ProceduralStream<Double> style(RNG rng, IrisStyledRange range)
|
||||
{
|
||||
default ProceduralStream<Double> style(RNG rng, IrisStyledRange range) {
|
||||
return ProceduralStream.of((x, z) -> {
|
||||
double d = getDouble(x, z);
|
||||
return range.get(rng,d, -d);
|
||||
return range.get(rng, d, -d);
|
||||
}, Interpolated.DOUBLE);
|
||||
}
|
||||
|
||||
|
||||
@@ -18,8 +18,8 @@
|
||||
|
||||
package com.volmit.iris.engine.stream.interpolation;
|
||||
|
||||
import com.volmit.iris.engine.interpolation.IrisInterpolation;
|
||||
import com.volmit.iris.engine.interpolation.InterpolationMethod;
|
||||
import com.volmit.iris.engine.interpolation.IrisInterpolation;
|
||||
import com.volmit.iris.engine.stream.BasicStream;
|
||||
import com.volmit.iris.engine.stream.ProceduralStream;
|
||||
import com.volmit.iris.util.function.NoiseProvider;
|
||||
|
||||
@@ -24,8 +24,6 @@ import com.volmit.iris.engine.cache.Cache;
|
||||
import com.volmit.iris.engine.stream.BasicStream;
|
||||
import com.volmit.iris.engine.stream.ProceduralStream;
|
||||
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
|
||||
public class CachedStream2D<T> extends BasicStream<T> implements ProceduralStream<T> {
|
||||
private final ProceduralStream<T> stream;
|
||||
private final ConcurrentLinkedHashMap<Long, T> cache;
|
||||
@@ -52,8 +50,7 @@ public class CachedStream2D<T> extends BasicStream<T> implements ProceduralStrea
|
||||
|
||||
@Override
|
||||
public T get(double x, double z) {
|
||||
if(IrisComplex.cacheLock.get())
|
||||
{
|
||||
if (IrisComplex.cacheLock.get()) {
|
||||
return stream.get((int) x, (int) z);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user