noise

Perlin noise library for Python

https://github.com/caseman/noise

Science Score: 10.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    2 of 8 committers (25.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.7%) to scientific vocabulary
Last synced: 11 months ago · JSON representation

Repository

Perlin noise library for Python

Basic Info
  • Host: GitHub
  • Owner: caseman
  • License: mit
  • Language: Python
  • Default Branch: master
  • Size: 153 KB
Statistics
  • Stars: 446
  • Watchers: 16
  • Forks: 71
  • Open Issues: 20
  • Releases: 0
Created over 13 years ago · Last pushed over 4 years ago
Metadata Files
Readme Changelog License

README.txt

Native-code and shader implementations of Perlin noise for Python

By Casey Duncan 

This package is designed to give you simple to use, fast functions for
generating Perlin noise in your Python programs. Perlin noise is famously
called the "salt" of procedural generation, as it adds considerable flavor in
its application. Noise is commonly used for imparting realism in textures,
animation and other procedural content generation -- placement of hairs,
heights of mountains, density of forests, waving of a flag, etc. etc..

Ken Perlin invented the technique implemented in these algorithms following
his work on the CGI for the movie Tron. Over time Perlin noise has become
ubiquitous in CGI, and greatly contributed to the huge leap in realism that
followed.

This is a good overview of how Perlin noise works and some example uses:
https://www.slideserve.com/Audrey/perlin-noise

An excellent discussion of simplex noise can be found here:
http://staffwww.itn.liu.se/~stegu/simplexnoise/simplexnoise.pdf

The noise library includes native-code implementations of Perlin "improved"
noise and Perlin simplex noise. It also includes a fast implementation of
Perlin noise in GLSL, for use in OpenGL shaders. The shader code and many of
the included examples require Pyglet (http://www.pyglet.org), the native-code
noise functions themselves do not, however.

The Perlin improved noise functions can also generate fBm (fractal Brownian
motion) noise by combining multiple octaves of Perlin noise. Functions for
convenient generation of turbulent noise in shaders are also included.

Installation uses the standard Python distutils regime:

python setup.py install

This will compile and install the noise package into your Python site
packages.

The functions and their signatures are documented in their respective
docstrings.  Use the Python help() function to read them.

>>> import noise 
>>> help(noise)

The examples directory contains sample programs using the noise functions.

I hope you find this package useful. Please send suggestions and bug reports
to my email above.

----

Blue planet texture used for atmosphere example courtesy NASA

Owner

  • Name: Casey Duncan
  • Login: caseman
  • Kind: user
  • Location: Colorado

GitHub Events

Total
  • Issues event: 2
  • Watch event: 29
  • Issue comment event: 5
  • Fork event: 3
Last Year
  • Issues event: 2
  • Watch event: 29
  • Issue comment event: 5
  • Fork event: 3

Committers

Last synced: almost 3 years ago

All Time
  • Total Commits: 52
  • Total Committers: 8
  • Avg Commits per committer: 6.5
  • Development Distribution Score (DDS): 0.269
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Casey Duncan c****n@g****m 38
Federico Tomassetti f****i@g****m 5
Bret Curtis p****a@g****m 2
Casey Duncan c****n@c****m 2
Christoph Gohlke c****e@u****u 2
Hector Dearman h****d@g****m 1
James Martin j****n@o****u 1
thEClaw t****l@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 28
  • Total pull requests: 14
  • Average time to close issues: 8 months
  • Average time to close pull requests: 2 months
  • Total issue authors: 27
  • Total pull request authors: 13
  • Average comments per issue: 2.36
  • Average comments per pull request: 0.86
  • Merged pull requests: 6
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 3
  • Pull requests: 1
  • Average time to close issues: 16 days
  • Average time to close pull requests: N/A
  • Issue authors: 3
  • Pull request authors: 1
  • Average comments per issue: 0.67
  • Average comments per pull request: 0.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • morgajel (2)
  • codershubham (1)
  • Shaderboy (1)
  • curtispuetz (1)
  • glyme6139 (1)
  • Incognitonomous (1)
  • CruzR (1)
  • hafizosina (1)
  • Lrizika (1)
  • tomjakubowski (1)
  • tatarize (1)
  • CreamyCookie (1)
  • gurkanctn (1)
  • fepegar (1)
  • lordgordon (1)
Pull Request Authors
  • psi29a (2)
  • zbenjamin (1)
  • chromy (1)
  • auvipy (1)
  • CruzR (1)
  • mwshinn (1)
  • ftomassetti (1)
  • jamescamdenmartin (1)
  • SeanceDog (1)
  • gurkanctn (1)
  • Kacper-W-Kozdon (1)
  • tcld (1)
  • cgohlke (1)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 3
  • Total downloads:
    • pypi 21,589 last-month
  • Total docker downloads: 175
  • Total dependent packages: 21
    (may contain duplicates)
  • Total dependent repositories: 185
    (may contain duplicates)
  • Total versions: 10
  • Total maintainers: 3
pypi.org: noise

Perlin noise for Python

  • Versions: 8
  • Dependent Packages: 20
  • Dependent Repositories: 181
  • Downloads: 21,574 Last month
  • Docker Downloads: 175
Rankings
Dependent packages count: 0.7%
Dependent repos count: 1.1%
Downloads: 2.0%
Average: 2.6%
Docker downloads count: 3.2%
Stargazers count: 3.2%
Forks count: 5.3%
Maintainers (2)
Last synced: 12 months ago
pypi.org: noise-randomized

Perlin noise for Python

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 15 Last month
Rankings
Stargazers count: 3.2%
Forks count: 5.3%
Dependent packages count: 10.0%
Average: 17.4%
Dependent repos count: 21.7%
Downloads: 46.9%
Maintainers (1)
Last synced: 12 months ago
conda-forge.org: noise

Perlin noise is ubiquitous in modern CGI. Used for procedural texturing, animation, and enhancing realism, Perlin noise has been called the "salt" of procedural content. Perlin noise is a type of gradient noise, smoothly interpolating across a pseudo-random matrix of values. The noise library includes native-code implementations of Perlin "improved" noise and Perlin simplex noise. It also includes a fast implementation of Perlin noise in GLSL, for use in OpenGL shaders. The shader code and many of the included examples require Pyglet (http://www.pyglet.org), the native-code noise functions themselves do not, however. The Perlin improved noise functions can also generate fBm (fractal Brownian motion) noise by combining multiple octaves of Perlin noise. Shader functions for convenient generation of turbulent noise are also included. - 1.2.2 AppVeyor support for Windows builds (Thanks to Federico Tomassetti) - 1.2.1 Fixes MSVC compatibility (Thanks to Christoph Gohlke) - 1.2.0 adds 4D simplex noise, tiling for 2D simplex noise, and parameterized lacunarity See CHANGES.txt for more details

  • Versions: 1
  • Dependent Packages: 1
  • Dependent Repositories: 3
Rankings
Dependent repos count: 18.0%
Stargazers count: 19.9%
Average: 22.4%
Forks count: 22.5%
Dependent packages count: 29.0%
Last synced: 11 months ago