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

FastNoise Lite #49

Merged
merged 77 commits into from
Sep 20, 2020
Merged

FastNoise Lite #49

merged 77 commits into from
Sep 20, 2020

Conversation

Auburn
Copy link
Owner

@Auburn Auburn commented Sep 20, 2020

Move FastNoise Lite into main branch, FastNoise legacy has been moved into a branch

Changes made with FastNoise Lite compared to FastNoise (legacy)

  • Heavy code cleanup, removed lots of duplicated code

  • Moved to hash based indexing instead of perm tables, allows for easier ports and speeds up managed languages

  • Changed API to only have 2 interfaces for getting noise, one for 2D and one for 3D, instead of separate ones for each noise type.

  • Dropped Simplex support in favour of OpenSimplex2 and OpenSimplex2S

  • Removed cellular lookup return type, this node style format doesn't fit with the rest of the library and caused issues with porting to various languages.

  • Added new fractal type: Ping Pong

  • Weighted setting for all fractals

  • Cellular can now use fractals

  • Cellular distance noise now has a minimum of -1 instead of 0

  • Added OpenSimplex2 based domain warp

  • Removed basic 4D Simplex support

  • C++ moved to a template style approach for allowing float and double support

  • Preview App is now cross-platform and the source is now part of the repo

  • Move all language ports into a single repository

Auburn and others added 30 commits July 22, 2020 12:08
…-enum-changes

OpenSimplex2 & Rearrangement, Misc
Auburn and others added 28 commits August 17, 2020 22:55
…mizations

More Simplex / OpenSimplex2 2D optimizations
* First draft based on C# work, untested.

* Done some work, using a tool I have validated the current system (partially)

* Feature parity with C#

Also fixed a speed issue by implementing our own min max functions.

* Forgot 3d simplex

* Remove old code and remove bad define

* Merge the arrays

* Parity with C# again

* Faster square root. Remove unnecessary double precision.

* Tidying

* Latest changes and HLSL port

* Latest changes

* Tidying, remove old C++

* Natural -> Hybrid

* Implement last nights changes.

* Update C port, PingPong speed issue present.

Will update HLSL somepoint later today.

* Latest changes

* Latest changes

* Feature parity across all sources

* Typedef parity and begin docs for C

* Hash parity and optimisations

* C feature parity. Needs testing and benching.

* HLSL catchup, builds but untested due to lack of testbench

* Fix example

* Didn't push all changes 🤦

* Update Readme

* Feature and order parity.

* Missing semicolon

* Changed prefix to fnl and expanded abbreviated enums
…-optimizations

OpenSimplex2S conditional related optimizations
@Auburn Auburn merged commit 4ff5e29 into master Sep 20, 2020
@Auburn Auburn deleted the FastNoiseLite branch September 20, 2020 16:44
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