mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2025-07-19 10:43:14 +00:00
Improvements
This commit is contained in:
parent
91c24d5501
commit
5bc019d3d3
@ -85,7 +85,6 @@ public class IrisData implements ExclusionStrategy, TypeAdapterFactory {
|
|||||||
private ResourceLoader<IrisExpression> expressionLoader;
|
private ResourceLoader<IrisExpression> expressionLoader;
|
||||||
private ResourceLoader<IrisObject> objectLoader;
|
private ResourceLoader<IrisObject> objectLoader;
|
||||||
private ResourceLoader<IrisScript> scriptLoader;
|
private ResourceLoader<IrisScript> scriptLoader;
|
||||||
private ResourceLoader<IrisMatter> matterLoader;
|
|
||||||
private ResourceLoader<IrisCave> caveLoader;
|
private ResourceLoader<IrisCave> caveLoader;
|
||||||
private ResourceLoader<IrisRavine> ravineLoader;
|
private ResourceLoader<IrisRavine> ravineLoader;
|
||||||
private KMap<String, KList<String>> possibleSnippets;
|
private KMap<String, KList<String>> possibleSnippets;
|
||||||
@ -169,10 +168,6 @@ public class IrisData implements ExclusionStrategy, TypeAdapterFactory {
|
|||||||
return loadAny(key, (dm) -> dm.getScriptLoader().load(key, false));
|
return loadAny(key, (dm) -> dm.getScriptLoader().load(key, false));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IrisMatter loadAnyMatter(String key) {
|
|
||||||
return loadAny(key, (dm) -> dm.getMatterLoader().load(key, false));
|
|
||||||
}
|
|
||||||
|
|
||||||
public static IrisRavine loadAnyRavine(String key) {
|
public static IrisRavine loadAnyRavine(String key) {
|
||||||
return loadAny(key, (dm) -> dm.getRavineLoader().load(key, false));
|
return loadAny(key, (dm) -> dm.getRavineLoader().load(key, false));
|
||||||
}
|
}
|
||||||
@ -333,7 +328,6 @@ public class IrisData implements ExclusionStrategy, TypeAdapterFactory {
|
|||||||
this.blockLoader = registerLoader(IrisBlockData.class);
|
this.blockLoader = registerLoader(IrisBlockData.class);
|
||||||
this.expressionLoader = registerLoader(IrisExpression.class);
|
this.expressionLoader = registerLoader(IrisExpression.class);
|
||||||
this.objectLoader = registerLoader(IrisObject.class);
|
this.objectLoader = registerLoader(IrisObject.class);
|
||||||
this.matterLoader = registerLoader(IrisMatter.class);
|
|
||||||
this.scriptLoader = registerLoader(IrisScript.class);
|
this.scriptLoader = registerLoader(IrisScript.class);
|
||||||
gson = builder.create();
|
gson = builder.create();
|
||||||
}
|
}
|
||||||
|
@ -116,6 +116,7 @@ public class IrisComplex implements DataProvider {
|
|||||||
.getAllBiomes(this).forEach((b) -> b
|
.getAllBiomes(this).forEach((b) -> b
|
||||||
.getGenerators()
|
.getGenerators()
|
||||||
.forEach((c) -> registerGenerator(c.getCachedGenerator(this)))));
|
.forEach((c) -> registerGenerator(c.getCachedGenerator(this)))));
|
||||||
|
Iris.info("Interpolators: " + generators.size());
|
||||||
overlayStream = ProceduralStream.ofDouble((x, z) -> 0D);
|
overlayStream = ProceduralStream.ofDouble((x, z) -> 0D);
|
||||||
engine.getDimension().getOverlayNoise().forEach((i) -> overlayStream.add((x, z) -> i.get(rng, getData(), x, z)));
|
engine.getDimension().getOverlayNoise().forEach((i) -> overlayStream.add((x, z) -> i.get(rng, getData(), x, z)));
|
||||||
rockStream = engine.getDimension().getRockPalette().getLayerGenerator(rng.nextParallelRNG(45), data).stream()
|
rockStream = engine.getDimension().getRockPalette().getLayerGenerator(rng.nextParallelRNG(45), data).stream()
|
||||||
|
@ -211,7 +211,6 @@ public class IrisGenerator extends IrisRegistrant {
|
|||||||
|
|
||||||
public double getHeight(double rx, double ry, double rz, long superSeed, boolean no3d) {
|
public double getHeight(double rx, double ry, double rz, long superSeed, boolean no3d) {
|
||||||
if (composite.isEmpty()) {
|
if (composite.isEmpty()) {
|
||||||
Iris.warn("Useless Generator: Composite is empty in " + getLoadKey());
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -219,6 +218,18 @@ public class IrisGenerator extends IrisRegistrant {
|
|||||||
double h = multiplicitive ? 1 : 0;
|
double h = multiplicitive ? 1 : 0;
|
||||||
double tp = 0;
|
double tp = 0;
|
||||||
|
|
||||||
|
if(composite.size() == 1)
|
||||||
|
{
|
||||||
|
if (multiplicitive) {
|
||||||
|
h *= composite.get(0).getNoise(seed + superSeed + hc, (rx + offsetX) / zoom, (rz + offsetZ) / zoom, getLoader());
|
||||||
|
} else {
|
||||||
|
tp += composite.get(0).getOpacity();
|
||||||
|
h += composite.get(0).getNoise(seed + superSeed + hc, (rx + offsetX) / zoom, (rz + offsetZ) / zoom, getLoader());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
else
|
||||||
|
{
|
||||||
for (IrisNoiseGenerator i : composite) {
|
for (IrisNoiseGenerator i : composite) {
|
||||||
if (multiplicitive) {
|
if (multiplicitive) {
|
||||||
h *= i.getNoise(seed + superSeed + hc, (rx + offsetX) / zoom, (rz + offsetZ) / zoom, getLoader());
|
h *= i.getNoise(seed + superSeed + hc, (rx + offsetX) / zoom, (rz + offsetZ) / zoom, getLoader());
|
||||||
@ -227,6 +238,7 @@ public class IrisGenerator extends IrisRegistrant {
|
|||||||
h += i.getNoise(seed + superSeed + hc, (rx + offsetX) / zoom, (rz + offsetZ) / zoom, getLoader());
|
h += i.getNoise(seed + superSeed + hc, (rx + offsetX) / zoom, (rz + offsetZ) / zoom, getLoader());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
double v = multiplicitive ? h * opacity : (h / tp) * opacity;
|
double v = multiplicitive ? h * opacity : (h / tp) * opacity;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user