.. image:: https://codeberg.org/screwery/blendnoise/raw/branch/master/image.png
:alt: Image
Description
-----------
.. image:: https://img.shields.io/pypi/v/blendnoise?style=flat-square
:alt: PyPI - Version
.. image:: https://img.shields.io/pypi/pyversions/blendnoise?style=flat-square
:alt: PyPI - Python Version
.. image:: https://img.shields.io/pypi/status/blendnoise?style=flat-square
:alt: PyPI - Status
.. image:: https://img.shields.io/pypi/dm/blendnoise?style=flat-square
:alt: PyPI - Downloads
.. image:: https://img.shields.io/pypi/l/blendnoise?style=flat-square
:alt: PyPI - License
.. image:: https://img.shields.io/gitea/issues/open/screwery/blendnoise?gitea_url=https%3A%2F%2Fcodeberg.org&style=flat-square
:alt: Gitea Issues
.. image:: https://img.shields.io/gitea/last-commit/screwery/blendnoise?gitea_url=https%3A%2F%2Fcodeberg.org&style=flat-square
:alt: Gitea Last Commit
**blendnoise** is a Python wrapper for C-translated Blender noise functions described at `BLI_noise <https://projects.blender.org/blender/blender/src/commit/9cade06f5f62c9764c087b54345b7ca120656f09/source/blender/blenlib/BLI_noise.h>`_ module. It is distributed under the same conditions as Blender source code.
**WARNING:** The maintainer of this package is not connected in any way with Blender authors and/or developers.
Installation
------------
From PyPI
~~~~~~~~~
.. code:: bash
python3 -m pip install blendnoise
From sources
~~~~~~~~~~~~
.. code:: bash
python3 -m pip install build
git clone https://codeberg.org/screwery/blendnoise
cd blendnoise
python3 -m build
python3 -m pip install dist/*
You may need to install C compiler or that stuff.
Usage
-----
I’m not much of a Python C-extension coder, so all functions are C-styled and embarrasingly straightforward.
More info about those functions and arguments you can find at `official Blender docs <https://docs.blender.org/api/4.2/mathutils.noise.html>`_
or from `Blender sources <https://projects.blender.org/blender/blender/src/commit/9cade06f5f62c9764c087b54345b7ca120656f09/source/blender/blenlib/BLI_noise.h>`_
itself.
Also, you may find useful a fair Matplotlib `visualization script <https://codeberg.org/screwery/blendnoise/src/branch/master/visualization_example.py>`_.
.. code:: python3
import blendnoise
# use those ints for noisebasis
NOISEBASIS = {
'OriginalPerlin': 1,
'NewPerlin': 2,
'VoronoiF1': 3,
'VoronoiF2': 4,
'VoronoiF3': 5,
'VoronoiF4': 6,
'VoronoiF1F2': 7,
'VoronoiCracked': 8,
'Cell': 14,
'Blender': 0
}
# Generic noise: just noisebasis, nothing more
blendnoise.noise (x: float, y: float, z: float, hard: bool, noisebasis: int)
# Generic turbulence
blendnoise.turbulence (x: float, y: float, z: float, oct: int, hard: bool,
noisebasis: int)
# Fractal Brownian Movement (FBM)
blendnoise.fbm (x: float, y: float, z: float, H: float, lacunarity: float,
octaves: float, noisebasis: int)
# Multi Fractal
blendnoise.multi_fractal (x: float, y: float, z: float, H: float,
lacunarity: float, octaves: float, noisebasis: int)
# Heterogeneous Terrain
blendnoise.hetero_terrain (x: float, y: float, z: float, H: float,
lacunarity: float, octaves: float, offset: float,
noisebasis: int)
# Hybrid Multi Fractal
blendnoise.hybrid_multi_fractal (x: float, y: float, z: float, H: float,
lacunarity: float, octaves: float,
offset: float, gain: float, noisebasis: int)
# Ridged Multi Fractal
blendnoise.ridged_multi_fractal (x: float, y: float, z: float, H: float,
lacunarity: float, octaves: float, offset:
float, gain: float, noisebasis: int)
# Variable Lacunarity: combined noise bases
blendnoise.variable_lacunarity (x: float, y: float, z: float, distortion: float,
noisebasis1: int, noisebasis2: int)
Bugs
----
Feel free to report bugs and request features `here <https://codeberg.org/screwery/blendnoise/issues>`_.
Raw data
{
"_id": null,
"home_page": "https://codeberg.org/screwery/blendnoise",
"name": "blendnoise",
"maintainer": "Ellie Viesn\u00e1",
"docs_url": null,
"requires_python": null,
"maintainer_email": "snowboard_refinery@proton.me",
"keywords": "blender, noise, landscape, perlin, voronoi, cell, musgrave, fractal",
"author": null,
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/69/57/0c00e4858c6e7ff0043440df5ecb5aa6986bfd24646639d6a0042cf78ee2/blendnoise-1.0.1.tar.gz",
"platform": null,
"description": ".. image:: https://codeberg.org/screwery/blendnoise/raw/branch/master/image.png\n :alt: Image\n\nDescription\n-----------\n\n.. image:: https://img.shields.io/pypi/v/blendnoise?style=flat-square\n :alt: PyPI - Version\n.. image:: https://img.shields.io/pypi/pyversions/blendnoise?style=flat-square\n :alt: PyPI - Python Version\n.. image:: https://img.shields.io/pypi/status/blendnoise?style=flat-square\n :alt: PyPI - Status\n.. image:: https://img.shields.io/pypi/dm/blendnoise?style=flat-square\n :alt: PyPI - Downloads\n.. image:: https://img.shields.io/pypi/l/blendnoise?style=flat-square\n :alt: PyPI - License\n.. image:: https://img.shields.io/gitea/issues/open/screwery/blendnoise?gitea_url=https%3A%2F%2Fcodeberg.org&style=flat-square\n :alt: Gitea Issues\n.. image:: https://img.shields.io/gitea/last-commit/screwery/blendnoise?gitea_url=https%3A%2F%2Fcodeberg.org&style=flat-square\n :alt: Gitea Last Commit\n\n**blendnoise** is a Python wrapper for C-translated Blender noise functions described at `BLI_noise <https://projects.blender.org/blender/blender/src/commit/9cade06f5f62c9764c087b54345b7ca120656f09/source/blender/blenlib/BLI_noise.h>`_ module. It is distributed under the same conditions as Blender source code.\n\n**WARNING:** The maintainer of this package is not connected in any way with Blender authors and/or developers.\n\nInstallation\n------------\n\nFrom PyPI\n~~~~~~~~~\n\n.. code:: bash\n\n python3 -m pip install blendnoise\n\nFrom sources\n~~~~~~~~~~~~\n\n.. code:: bash\n\n python3 -m pip install build\n git clone https://codeberg.org/screwery/blendnoise\n cd blendnoise\n python3 -m build\n python3 -m pip install dist/*\n\nYou may need to install C compiler or that stuff.\n\nUsage\n-----\n\nI\u2019m not much of a Python C-extension coder, so all functions are C-styled and embarrasingly straightforward.\n\nMore info about those functions and arguments you can find at `official Blender docs <https://docs.blender.org/api/4.2/mathutils.noise.html>`_\nor from `Blender sources <https://projects.blender.org/blender/blender/src/commit/9cade06f5f62c9764c087b54345b7ca120656f09/source/blender/blenlib/BLI_noise.h>`_\nitself.\n\nAlso, you may find useful a fair Matplotlib `visualization script <https://codeberg.org/screwery/blendnoise/src/branch/master/visualization_example.py>`_.\n\n.. code:: python3\n\n import blendnoise\n\n # use those ints for noisebasis\n NOISEBASIS = {\n 'OriginalPerlin': 1,\n 'NewPerlin': 2,\n 'VoronoiF1': 3,\n 'VoronoiF2': 4,\n 'VoronoiF3': 5,\n 'VoronoiF4': 6,\n 'VoronoiF1F2': 7,\n 'VoronoiCracked': 8,\n 'Cell': 14,\n 'Blender': 0\n }\n\n # Generic noise: just noisebasis, nothing more\n blendnoise.noise (x: float, y: float, z: float, hard: bool, noisebasis: int)\n\n # Generic turbulence\n blendnoise.turbulence (x: float, y: float, z: float, oct: int, hard: bool,\n noisebasis: int)\n\n # Fractal Brownian Movement (FBM)\n blendnoise.fbm (x: float, y: float, z: float, H: float, lacunarity: float,\n octaves: float, noisebasis: int)\n\n # Multi Fractal\n blendnoise.multi_fractal (x: float, y: float, z: float, H: float,\n lacunarity: float, octaves: float, noisebasis: int)\n\n # Heterogeneous Terrain\n blendnoise.hetero_terrain (x: float, y: float, z: float, H: float,\n lacunarity: float, octaves: float, offset: float,\n noisebasis: int)\n\n # Hybrid Multi Fractal\n blendnoise.hybrid_multi_fractal (x: float, y: float, z: float, H: float,\n lacunarity: float, octaves: float,\n offset: float, gain: float, noisebasis: int)\n\n # Ridged Multi Fractal\n blendnoise.ridged_multi_fractal (x: float, y: float, z: float, H: float,\n lacunarity: float, octaves: float, offset:\n float, gain: float, noisebasis: int)\n\n # Variable Lacunarity: combined noise bases\n blendnoise.variable_lacunarity (x: float, y: float, z: float, distortion: float,\n noisebasis1: int, noisebasis2: int)\n\nBugs\n----\n\nFeel free to report bugs and request features `here <https://codeberg.org/screwery/blendnoise/issues>`_.\n",
"bugtrack_url": null,
"license": "GNU GPLv2+",
"summary": "Python wrapper for Blender noise functions",
"version": "1.0.1",
"project_urls": {
"Homepage": "https://codeberg.org/screwery/blendnoise"
},
"split_keywords": [
"blender",
" noise",
" landscape",
" perlin",
" voronoi",
" cell",
" musgrave",
" fractal"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "69570c00e4858c6e7ff0043440df5ecb5aa6986bfd24646639d6a0042cf78ee2",
"md5": "cbc548472da9318077b3ecafe6d265cd",
"sha256": "8874198ce1fe7fd730236f1fef134369005d4eebc80c0fb1efaa28f9e9003e54"
},
"downloads": -1,
"filename": "blendnoise-1.0.1.tar.gz",
"has_sig": false,
"md5_digest": "cbc548472da9318077b3ecafe6d265cd",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 26550,
"upload_time": "2025-03-03T16:04:29",
"upload_time_iso_8601": "2025-03-03T16:04:29.604183Z",
"url": "https://files.pythonhosted.org/packages/69/57/0c00e4858c6e7ff0043440df5ecb5aa6986bfd24646639d6a0042cf78ee2/blendnoise-1.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-03-03 16:04:29",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": true,
"codeberg_user": "screwery",
"codeberg_project": "blendnoise",
"lcname": "blendnoise"
}