Fix small bug in samplePerlin #158
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I have noticed a small bug in
samplePerlinthat sometimes causes a mismatch between Cubiomes'samplePerlinand Minecraft'sImprovedNoise#noise. I also renamed theyminparameter toymaxbecause it serves as a maximum, not a minimum.Here is a concrete example where the values disagree:
C:
Java:
The used array:
For the C code, append the first element of the array to the array.
With the fix in place, the same values are returned.
I noticed this issue when implementing
base_3d_noisesampling. For example, the overworld uses the following noise:where
randomStateis an instance ofnet.minecraft.world.level.levelgen.RandomState. Note that for this specific example, one should use Cubiomes'octaveInitbut with a Xoroshiro random. The above example values come from testing this noise.