Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Correct issues with previous Seed changes #64

Merged
merged 3 commits into from
Jan 12, 2015
Merged

Conversation

amaranth
Copy link
Collaborator

No description provided.

The changes in commit ce8e06f made Seed use multiple permutation tables
which resulted in a significant speed improvement. However, when using
multiple tables in this style you are required to use a much larger
gradient/vector table in order to get correct results. The minimum number
of entries required is 64 while the ideal is 256. Doing this changes the
time for a single perlin2 sample from 13ns to 4000ns which is not
acceptable.

As we can not properly make use of the multiple permutation tables we
instead swhich back to only use one. However we are now using proper
Pearson hashing instead of the variant we had before. This allows us to
avoid having a double length table and seems to still offer a small benefit
in speed over the old style, even if it isn't as large as multiple tables
seemed to be.
As the recent changes have shown our examples do not cover a large enough
area to make problems with their output immediately obvious. This changes
them to the size required to see the previous problems and hopefully all
future ones as well.
@amaranth amaranth changed the title Correct issues wish previous Seed changes Correct issues with previous Seed changes Jan 12, 2015
@mpowell-imvu
Copy link

This makes me sad, but I guess there's nothing for it...

Cifram added a commit that referenced this pull request Jan 12, 2015
Correct issues with previous Seed changes
@Cifram Cifram merged commit 22660e6 into Razaekel:master Jan 12, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants