mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2025-07-18 10:12:53 +00:00
Cleanup
This commit is contained in:
parent
4b8cfd9fdd
commit
18c70002cb
@ -442,10 +442,8 @@ public class IrisProject {
|
|||||||
JSONArray schemas = new JSONArray();
|
JSONArray schemas = new JSONArray();
|
||||||
IrisData dm = new IrisData(getPath());
|
IrisData dm = new IrisData(getPath());
|
||||||
|
|
||||||
for(ResourceLoader<?> r : dm.getLoaders().v())
|
for (ResourceLoader<?> r : dm.getLoaders().v()) {
|
||||||
{
|
if (r.supportsSchemas()) {
|
||||||
if(r.supportsSchemas())
|
|
||||||
{
|
|
||||||
schemas.put(r.buildSchema());
|
schemas.put(r.buildSchema());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -166,13 +166,11 @@ public class SchemaBuilder {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if(k.isAnnotationPresent(RegistryListResource.class))
|
if (k.isAnnotationPresent(RegistryListResource.class)) {
|
||||||
{
|
|
||||||
RegistryListResource rr = k.getDeclaredAnnotation(RegistryListResource.class);
|
RegistryListResource rr = k.getDeclaredAnnotation(RegistryListResource.class);
|
||||||
ResourceLoader<?> loader = data.getLoaders().get(rr.value());
|
ResourceLoader<?> loader = data.getLoaders().get(rr.value());
|
||||||
|
|
||||||
if(loader != null)
|
if (loader != null) {
|
||||||
{
|
|
||||||
String key = "erz" + loader.getFolderName();
|
String key = "erz" + loader.getFolderName();
|
||||||
|
|
||||||
if (!definitions.containsKey(key)) {
|
if (!definitions.containsKey(key)) {
|
||||||
@ -184,15 +182,10 @@ public class SchemaBuilder {
|
|||||||
fancyType = "Iris " + loader.getResourceTypeName();
|
fancyType = "Iris " + loader.getResourceTypeName();
|
||||||
prop.put("$ref", "#/definitions/" + key);
|
prop.put("$ref", "#/definitions/" + key);
|
||||||
description.add(SYMBOL_TYPE__N + " Must be a valid " + loader.getFolderName() + " (use ctrl+space for auto complete!)");
|
description.add(SYMBOL_TYPE__N + " Must be a valid " + loader.getFolderName() + " (use ctrl+space for auto complete!)");
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Iris.error("Cannot find Registry Loader for type " + rr.value() + " used in " + k.getDeclaringClass().getCanonicalName() + " in field " + k.getName());
|
Iris.error("Cannot find Registry Loader for type " + rr.value() + " used in " + k.getDeclaringClass().getCanonicalName() + " in field " + k.getName());
|
||||||
}
|
}
|
||||||
}
|
} else if (k.isAnnotationPresent(RegistryListMythical.class)) {
|
||||||
|
|
||||||
else if (k.isAnnotationPresent(RegistryListMythical.class)) {
|
|
||||||
String key = "enum-reg-mythical";
|
String key = "enum-reg-mythical";
|
||||||
|
|
||||||
if (!definitions.containsKey(key)) {
|
if (!definitions.containsKey(key)) {
|
||||||
@ -354,13 +347,11 @@ public class SchemaBuilder {
|
|||||||
case "string" -> {
|
case "string" -> {
|
||||||
fancyType = "List of Text";
|
fancyType = "List of Text";
|
||||||
|
|
||||||
if(k.isAnnotationPresent(RegistryListResource.class))
|
if (k.isAnnotationPresent(RegistryListResource.class)) {
|
||||||
{
|
|
||||||
RegistryListResource rr = k.getDeclaredAnnotation(RegistryListResource.class);
|
RegistryListResource rr = k.getDeclaredAnnotation(RegistryListResource.class);
|
||||||
ResourceLoader<?> loader = data.getLoaders().get(rr.value());
|
ResourceLoader<?> loader = data.getLoaders().get(rr.value());
|
||||||
|
|
||||||
if(loader != null)
|
if (loader != null) {
|
||||||
{
|
|
||||||
fancyType = "List<" + loader.getResourceTypeName() + ">";
|
fancyType = "List<" + loader.getResourceTypeName() + ">";
|
||||||
String key = "erz" + loader.getFolderName();
|
String key = "erz" + loader.getFolderName();
|
||||||
|
|
||||||
@ -374,14 +365,10 @@ public class SchemaBuilder {
|
|||||||
items.put("$ref", "#/definitions/" + key);
|
items.put("$ref", "#/definitions/" + key);
|
||||||
prop.put("items", items);
|
prop.put("items", items);
|
||||||
description.add(SYMBOL_TYPE__N + " Must be a valid " + loader.getResourceTypeName() + " (use ctrl+space for auto complete!)");
|
description.add(SYMBOL_TYPE__N + " Must be a valid " + loader.getResourceTypeName() + " (use ctrl+space for auto complete!)");
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Iris.error("Cannot find Registry Loader for type (list schema) " + rr.value() + " used in " + k.getDeclaringClass().getCanonicalName() + " in field " + k.getName());
|
Iris.error("Cannot find Registry Loader for type (list schema) " + rr.value() + " used in " + k.getDeclaringClass().getCanonicalName() + " in field " + k.getName());
|
||||||
}
|
}
|
||||||
}
|
} else if (k.isAnnotationPresent(RegistryListMythical.class)) {
|
||||||
else if (k.isAnnotationPresent(RegistryListMythical.class)) {
|
|
||||||
fancyType = "List of Mythic Mob Types";
|
fancyType = "List of Mythic Mob Types";
|
||||||
String key = "enum-reg-mythical";
|
String key = "enum-reg-mythical";
|
||||||
|
|
||||||
|
@ -77,29 +77,20 @@ public class IrisData {
|
|||||||
return new IrisData(dataFolder);
|
return new IrisData(dataFolder);
|
||||||
}
|
}
|
||||||
|
|
||||||
private <T extends IrisRegistrant> ResourceLoader<T> registerLoader(Class<T> registrant)
|
private <T extends IrisRegistrant> ResourceLoader<T> registerLoader(Class<T> registrant) {
|
||||||
{
|
try {
|
||||||
try
|
|
||||||
{
|
|
||||||
IrisRegistrant rr = registrant.getConstructor().newInstance();
|
IrisRegistrant rr = registrant.getConstructor().newInstance();
|
||||||
ResourceLoader<T> r = null;
|
ResourceLoader<T> r = null;
|
||||||
if(registrant.equals(IrisObject.class))
|
if (registrant.equals(IrisObject.class)) {
|
||||||
{
|
|
||||||
r = (ResourceLoader<T>) new ObjectResourceLoader(dataFolder, this, rr.getFolderName(), rr.getTypeName());
|
r = (ResourceLoader<T>) new ObjectResourceLoader(dataFolder, this, rr.getFolderName(), rr.getTypeName());
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else
|
|
||||||
{
|
|
||||||
r = new ResourceLoader<T>(dataFolder, this, rr.getFolderName(), rr.getTypeName(), registrant);
|
r = new ResourceLoader<T>(dataFolder, this, rr.getFolderName(), rr.getTypeName(), registrant);
|
||||||
}
|
}
|
||||||
|
|
||||||
loaders.put(registrant, r);
|
loaders.put(registrant, r);
|
||||||
|
|
||||||
return r;
|
return r;
|
||||||
}
|
} catch (Throwable e) {
|
||||||
|
|
||||||
catch(Throwable e)
|
|
||||||
{
|
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
Iris.error("Failed to create loader! " + registrant.getCanonicalName());
|
Iris.error("Failed to create loader! " + registrant.getCanonicalName());
|
||||||
}
|
}
|
||||||
@ -136,8 +127,7 @@ public class IrisData {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
for(ResourceLoader<?> i : loaders.values())
|
for (ResourceLoader<?> i : loaders.values()) {
|
||||||
{
|
|
||||||
i.clearCache();
|
i.clearCache();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -147,8 +137,7 @@ public class IrisData {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
for(ResourceLoader<?> i : loaders.values())
|
for (ResourceLoader<?> i : loaders.values()) {
|
||||||
{
|
|
||||||
i.clearList();
|
i.clearList();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -74,15 +74,13 @@ public class ResourceLoader<T extends IrisRegistrant> {
|
|||||||
Iris.debug("Loader<" + C.GREEN + resourceTypeName + C.LIGHT_PURPLE + "> created in " + C.RED + "IDM/" + manager.getId() + C.LIGHT_PURPLE + " on " + C.WHITE + manager.getDataFolder().getPath());
|
Iris.debug("Loader<" + C.GREEN + resourceTypeName + C.LIGHT_PURPLE + "> created in " + C.RED + "IDM/" + manager.getId() + C.LIGHT_PURPLE + " on " + C.WHITE + manager.getDataFolder().getPath());
|
||||||
}
|
}
|
||||||
|
|
||||||
public JSONObject buildSchema()
|
public JSONObject buildSchema() {
|
||||||
{
|
|
||||||
Iris.debug("Building Schema " + objectClass.getSimpleName() + " " + root.getPath());
|
Iris.debug("Building Schema " + objectClass.getSimpleName() + " " + root.getPath());
|
||||||
JSONObject o = new JSONObject();
|
JSONObject o = new JSONObject();
|
||||||
KList<String> fm = new KList<>();
|
KList<String> fm = new KList<>();
|
||||||
|
|
||||||
for(int g = 1; g < 8; g++)
|
for (int g = 1; g < 8; g++) {
|
||||||
{
|
fm.add("/" + folderName + Form.repeat("/*", g) + ".json");
|
||||||
fm.add("/" + root.getName() + Form.repeat("/*", g) + ".json");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
o.put("fileMatch", new JSONArray(fm.toArray()));
|
o.put("fileMatch", new JSONArray(fm.toArray()));
|
||||||
|
@ -18,6 +18,7 @@
|
|||||||
|
|
||||||
package com.volmit.iris.engine.framework;
|
package com.volmit.iris.engine.framework;
|
||||||
|
|
||||||
|
|
||||||
import com.volmit.iris.engine.hunk.Hunk;
|
import com.volmit.iris.engine.hunk.Hunk;
|
||||||
|
|
||||||
public abstract class EngineAssignedBiModifier<A, B> extends EngineAssignedComponent implements EngineBiModifier<A, B> {
|
public abstract class EngineAssignedBiModifier<A, B> extends EngineAssignedComponent implements EngineBiModifier<A, B> {
|
||||||
|
@ -18,6 +18,7 @@
|
|||||||
|
|
||||||
package com.volmit.iris.engine.framework;
|
package com.volmit.iris.engine.framework;
|
||||||
|
|
||||||
|
|
||||||
import com.volmit.iris.engine.hunk.Hunk;
|
import com.volmit.iris.engine.hunk.Hunk;
|
||||||
|
|
||||||
public interface EngineBiModifier<A, B> extends EngineComponent {
|
public interface EngineBiModifier<A, B> extends EngineComponent {
|
||||||
|
@ -175,7 +175,7 @@ public class CNG {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public CNG(RNG random, NoiseType type, double opacity, int octaves) {
|
public CNG(RNG random, NoiseType type, double opacity, int octaves) {
|
||||||
this(random, type.create(random.nextParallelRNG((long) ((1113334944L * opacity) + 12922 + octaves)).lmax()), opacity, octaves);
|
this(random, type.create(random.nextParallelRNG((long) ((1113334944L * opacity) + 12922 + octaves)).lmax()), opacity, octaves);
|
||||||
}
|
}
|
||||||
|
|
||||||
public CNG(RNG random, NoiseGenerator generator, double opacity, int octaves) {
|
public CNG(RNG random, NoiseGenerator generator, double opacity, int octaves) {
|
||||||
|
@ -21,12 +21,11 @@ package com.volmit.iris.engine.noise;
|
|||||||
import com.volmit.iris.engine.object.IrisExpression;
|
import com.volmit.iris.engine.object.IrisExpression;
|
||||||
import com.volmit.iris.util.math.RNG;
|
import com.volmit.iris.util.math.RNG;
|
||||||
|
|
||||||
public class ExpressionNoise implements NoiseGenerator{
|
public class ExpressionNoise implements NoiseGenerator {
|
||||||
private final RNG rng;
|
private final RNG rng;
|
||||||
private final IrisExpression expression;
|
private final IrisExpression expression;
|
||||||
|
|
||||||
public ExpressionNoise(RNG rng, IrisExpression expression)
|
public ExpressionNoise(RNG rng, IrisExpression expression) {
|
||||||
{
|
|
||||||
this.rng = rng;
|
this.rng = rng;
|
||||||
this.expression = expression;
|
this.expression = expression;
|
||||||
}
|
}
|
||||||
|
@ -29,8 +29,7 @@ public interface NoiseGenerator {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
default boolean isNoScale()
|
default boolean isNoScale() {
|
||||||
{
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -31,8 +31,7 @@ public class WhiteNoise implements NoiseGenerator {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isNoScale()
|
public boolean isNoScale() {
|
||||||
{
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25,8 +25,7 @@ import com.volmit.iris.engine.stream.ProceduralStream;
|
|||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
|
|
||||||
@Desc("Represents a stream from the engine")
|
@Desc("Represents a stream from the engine")
|
||||||
public enum IrisEngineStreamType
|
public enum IrisEngineStreamType {
|
||||||
{
|
|
||||||
@Desc("Represents the given slope at the x, z coordinates")
|
@Desc("Represents the given slope at the x, z coordinates")
|
||||||
SLOPE((f) -> f.getComplex().getSlopeStream()),
|
SLOPE((f) -> f.getComplex().getSlopeStream()),
|
||||||
|
|
||||||
@ -57,15 +56,13 @@ public enum IrisEngineStreamType
|
|||||||
@Desc("Represents the identity of regions. Each region has a unique number (very large numbers)")
|
@Desc("Represents the identity of regions. Each region has a unique number (very large numbers)")
|
||||||
REGION_IDENTITY((f) -> f.getComplex().getRegionIdentityStream());
|
REGION_IDENTITY((f) -> f.getComplex().getRegionIdentityStream());
|
||||||
|
|
||||||
private Function<EngineFramework, ProceduralStream<Double>> getter;
|
private final Function<EngineFramework, ProceduralStream<Double>> getter;
|
||||||
|
|
||||||
private IrisEngineStreamType(Function<EngineFramework, ProceduralStream<Double>> getter)
|
IrisEngineStreamType(Function<EngineFramework, ProceduralStream<Double>> getter) {
|
||||||
{
|
|
||||||
this.getter = getter;
|
this.getter = getter;
|
||||||
}
|
}
|
||||||
|
|
||||||
public ProceduralStream<Double> get(EngineFramework engine)
|
public ProceduralStream<Double> get(EngineFramework engine) {
|
||||||
{
|
|
||||||
return getter.apply(engine);
|
return getter.apply(engine);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -24,8 +24,7 @@ import com.volmit.iris.engine.object.annotations.Desc;
|
|||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
|
|
||||||
@Desc("Represents a value from the engine")
|
@Desc("Represents a value from the engine")
|
||||||
public enum IrisEngineValueType
|
public enum IrisEngineValueType {
|
||||||
{
|
|
||||||
@Desc("Represents actual height of the engine")
|
@Desc("Represents actual height of the engine")
|
||||||
ENGINE_HEIGHT((f) -> Double.valueOf(f.getEngine().getHeight())),
|
ENGINE_HEIGHT((f) -> Double.valueOf(f.getEngine().getHeight())),
|
||||||
|
|
||||||
@ -42,15 +41,13 @@ public enum IrisEngineValueType
|
|||||||
FLUID_HEIGHT((f) -> Double.valueOf(f.getComplex().getFluidHeight())),
|
FLUID_HEIGHT((f) -> Double.valueOf(f.getComplex().getFluidHeight())),
|
||||||
;
|
;
|
||||||
|
|
||||||
private Function<EngineFramework, Double> getter;
|
private final Function<EngineFramework, Double> getter;
|
||||||
|
|
||||||
private IrisEngineValueType(Function<EngineFramework, Double> getter)
|
IrisEngineValueType(Function<EngineFramework, Double> getter) {
|
||||||
{
|
|
||||||
this.getter = getter;
|
this.getter = getter;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Double get(EngineFramework engine)
|
public Double get(EngineFramework engine) {
|
||||||
{
|
|
||||||
return getter.apply(engine);
|
return getter.apply(engine);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -40,13 +40,13 @@ import lombok.experimental.Accessors;
|
|||||||
@Accessors(chain = true)
|
@Accessors(chain = true)
|
||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@Desc("Represents Block Data")
|
@Desc("Represents an Iris Expression")
|
||||||
@Data
|
@Data
|
||||||
@EqualsAndHashCode(callSuper = false)
|
@EqualsAndHashCode(callSuper = false)
|
||||||
public class IrisExpression extends IrisRegistrant {
|
public class IrisExpression extends IrisRegistrant {
|
||||||
private static final Parser parser = new Parser();
|
private static final Parser parser = new Parser();
|
||||||
|
|
||||||
@ArrayType(type = IrisExpression.class, min = 1)
|
@ArrayType(type = IrisExpressionLoad.class, min = 1)
|
||||||
@Desc("Variables to use in this expression")
|
@Desc("Variables to use in this expression")
|
||||||
private KList<IrisExpressionLoad> variables = new KList<>();
|
private KList<IrisExpressionLoad> variables = new KList<>();
|
||||||
|
|
||||||
@ -85,8 +85,7 @@ public class IrisExpression extends IrisRegistrant {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public ProceduralStream<Double> stream(RNG rng)
|
public ProceduralStream<Double> stream(RNG rng) {
|
||||||
{
|
|
||||||
return streamCache.aquire(() -> ProceduralStream.of((x, z) -> evaluate(rng, x, z),
|
return streamCache.aquire(() -> ProceduralStream.of((x, z) -> evaluate(rng, x, z),
|
||||||
(x, y, z) -> evaluate(rng, x, y, z), Interpolated.DOUBLE));
|
(x, y, z) -> evaluate(rng, x, y, z), Interpolated.DOUBLE));
|
||||||
}
|
}
|
||||||
|
@ -34,12 +34,12 @@ import lombok.experimental.Accessors;
|
|||||||
@Accessors(chain = true)
|
@Accessors(chain = true)
|
||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@Desc("Represents Block Data")
|
@Desc("Represents a variable to use in your expression. Do not set the name to x, y, or z, also don't duplicate names.")
|
||||||
@Data
|
@Data
|
||||||
@EqualsAndHashCode(callSuper = false)
|
@EqualsAndHashCode(callSuper = false)
|
||||||
public class IrisExpressionLoad {
|
public class IrisExpressionLoad {
|
||||||
@Required
|
@Required
|
||||||
@Desc("The variable to assign this value to")
|
@Desc("The variable to assign this value to. Do not set the name to x, y, or z")
|
||||||
private String name = "";
|
private String name = "";
|
||||||
|
|
||||||
@Desc("If the style value is not defined, this value will be used")
|
@Desc("If the style value is not defined, this value will be used")
|
||||||
@ -58,13 +58,11 @@ public class IrisExpressionLoad {
|
|||||||
private transient AtomicCache<Double> valueCache = new AtomicCache<>();
|
private transient AtomicCache<Double> valueCache = new AtomicCache<>();
|
||||||
|
|
||||||
public double getValue(RNG rng, IrisData data, double x, double z) {
|
public double getValue(RNG rng, IrisData data, double x, double z) {
|
||||||
if(engineValue != null)
|
if (engineValue != null) {
|
||||||
{
|
|
||||||
return valueCache.aquire(() -> engineValue.get(data.getEngine().getFramework()));
|
return valueCache.aquire(() -> engineValue.get(data.getEngine().getFramework()));
|
||||||
}
|
}
|
||||||
|
|
||||||
if(engineStreamValue != null)
|
if (engineStreamValue != null) {
|
||||||
{
|
|
||||||
return streamCache.aquire(() -> engineStreamValue.get(data.getEngine().getFramework())).get(x, z);
|
return streamCache.aquire(() -> engineStreamValue.get(data.getEngine().getFramework())).get(x, z);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -76,13 +74,11 @@ public class IrisExpressionLoad {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public double getValue(RNG rng, IrisData data, double x, double y, double z) {
|
public double getValue(RNG rng, IrisData data, double x, double y, double z) {
|
||||||
if(engineValue != null)
|
if (engineValue != null) {
|
||||||
{
|
|
||||||
return valueCache.aquire(() -> engineValue.get(data.getEngine().getFramework()));
|
return valueCache.aquire(() -> engineValue.get(data.getEngine().getFramework()));
|
||||||
}
|
}
|
||||||
|
|
||||||
if(engineStreamValue != null)
|
if (engineStreamValue != null) {
|
||||||
{
|
|
||||||
return streamCache.aquire(() -> engineStreamValue.get(data.getEngine().getFramework())).get(x, z);
|
return streamCache.aquire(() -> engineStreamValue.get(data.getEngine().getFramework())).get(x, z);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -22,7 +22,10 @@ import com.volmit.iris.core.project.loader.IrisData;
|
|||||||
import com.volmit.iris.engine.cache.AtomicCache;
|
import com.volmit.iris.engine.cache.AtomicCache;
|
||||||
import com.volmit.iris.engine.noise.CNG;
|
import com.volmit.iris.engine.noise.CNG;
|
||||||
import com.volmit.iris.engine.noise.ExpressionNoise;
|
import com.volmit.iris.engine.noise.ExpressionNoise;
|
||||||
import com.volmit.iris.engine.object.annotations.*;
|
import com.volmit.iris.engine.object.annotations.Desc;
|
||||||
|
import com.volmit.iris.engine.object.annotations.MaxNumber;
|
||||||
|
import com.volmit.iris.engine.object.annotations.MinNumber;
|
||||||
|
import com.volmit.iris.engine.object.annotations.RegistryListResource;
|
||||||
import com.volmit.iris.util.math.RNG;
|
import com.volmit.iris.util.math.RNG;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
@ -75,12 +78,10 @@ public class IrisGeneratorStyle {
|
|||||||
public CNG create(RNG rng, IrisData data) {
|
public CNG create(RNG rng, IrisData data) {
|
||||||
return cng.aquire(() ->
|
return cng.aquire(() ->
|
||||||
{
|
{
|
||||||
if(getExpression() != null)
|
if (getExpression() != null) {
|
||||||
{
|
|
||||||
IrisExpression e = data.getExpressionLoader().load(getExpression());
|
IrisExpression e = data.getExpressionLoader().load(getExpression());
|
||||||
|
|
||||||
if(e != null)
|
if (e != null) {
|
||||||
{
|
|
||||||
CNG cng = new CNG(rng, new ExpressionNoise(rng, e), 1D, 1)
|
CNG cng = new CNG(rng, new ExpressionNoise(rng, e), 1D, 1)
|
||||||
.bake().scale(1D / zoom).pow(exponent).bake();
|
.bake().scale(1D / zoom).pow(exponent).bake();
|
||||||
cng.setTrueFracturing(axialFracturing);
|
cng.setTrueFracturing(axialFracturing);
|
||||||
|
@ -75,7 +75,6 @@ public class IrisObject extends IrisRegistrant {
|
|||||||
private transient AtomicCache<AxisAlignedBB> aabb = new AtomicCache<>();
|
private transient AtomicCache<AxisAlignedBB> aabb = new AtomicCache<>();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public IrisObject(int w, int h, int d) {
|
public IrisObject(int w, int h, int d) {
|
||||||
blocks = new KMap<>();
|
blocks = new KMap<>();
|
||||||
states = new KMap<>();
|
states = new KMap<>();
|
||||||
@ -86,7 +85,7 @@ public class IrisObject extends IrisRegistrant {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public IrisObject() {
|
public IrisObject() {
|
||||||
this(0,0,0);
|
this(0, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AxisAlignedBB getAABB() {
|
public AxisAlignedBB getAABB() {
|
||||||
|
@ -18,6 +18,7 @@
|
|||||||
|
|
||||||
package com.volmit.iris.engine.parallel;
|
package com.volmit.iris.engine.parallel;
|
||||||
|
|
||||||
|
|
||||||
import com.volmit.iris.engine.hunk.Hunk;
|
import com.volmit.iris.engine.hunk.Hunk;
|
||||||
|
|
||||||
public interface BurstedHunk<T> extends Hunk<T> {
|
public interface BurstedHunk<T> extends Hunk<T> {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user