diff --git a/api/src/main/java/com/seibel/distanthorizons/api/interfaces/override/worldGenerator/IDhApiWorldGenerator.java b/api/src/main/java/com/seibel/distanthorizons/api/interfaces/override/worldGenerator/IDhApiWorldGenerator.java index 0563a08f3..072235c8c 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/interfaces/override/worldGenerator/IDhApiWorldGenerator.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/interfaces/override/worldGenerator/IDhApiWorldGenerator.java @@ -20,7 +20,7 @@ public interface IDhApiWorldGenerator extends Closeable, IDhApiOverrideable // parameters // //============// - /** + /* * Returns which thread chunk generation requests will be run on.
* TODO: only {@link EDhApiWorldGenThreadMode#MULTI_THREADED} is implemented */ diff --git a/core/src/main/java/com/seibel/distanthorizons/core/generation/WorldGenerationQueue.java b/core/src/main/java/com/seibel/distanthorizons/core/generation/WorldGenerationQueue.java index 1bf26b35f..dba52db72 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/generation/WorldGenerationQueue.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/generation/WorldGenerationQueue.java @@ -423,7 +423,25 @@ public class WorldGenerationQueue implements Closeable, IDebugRenderable } /** * The chunkPos is always aligned to the granularity. - * For example: if the granularity is 4 (chunk sized) with a data detail level of 0 (block sized), the chunkPos will be aligned to 16x16 blocks. + * For example: if the granularity is 4 (chunk sized) with a data detail level of 0 (block sized), + * the chunkPos will be aligned to 16x16 blocks.

+ * + * + * Full Granularity definition (as of 2023-6-21):

+ * + * world gen actually supports (in theory) generating stuff with a data detail that's higher than the per-block.

+ * + * Granularity basically means, on a single generation task, how big such group should be, in terms of the data points it will make.

+ * + * For example, a granularity of 4 means the task will generate a 16 by 16 data points. + * Now, those data points might be per block, or per 4 by 4 blocks. Granularity doesn't say what detail those would be.

+ * + * Note: currently the core system sends data via the chunk sized container, + * which has the locked granularity of 4 (16 by 16 data columns), and thus generators should at least have min granularity of 4. + * (Gen chunk width in that context means how many 'chunk sized containers' it will fill up. + * Again, note that a 'chunk sized container' isn't necessary 16 by 16 Minecraft blocks wide. + * It only has to contain 16 by 16 columns of data points, in whatever data detail it might be in.) + * (So, with a generator whose only gen data detail is 0, it is the same as a MC chunk.) */ private CompletableFuture startGenerationEvent( DhChunkPos chunkPosMin,