An efficient texture-free GLSL procedural noise library

Related tags

Miscellaneous Wombat
Overview

Wombat
An efficient texture-free GLSL procedural noise library
Source: https://github.com/BrianSharpe/Wombat
Derived from: https://github.com/BrianSharpe/GPU-Noise-Lib

I'm not one for copyrights. Use the code however you wish.
All I ask is that credit be given back to the blog or myself when appropriate.
And also to let me know if you come up with any changes, improvements, thoughts or interesting uses for this stuff. :)
Thanks!

Brian Sharpe
brisharpe CIRCLE_A yahoo DOT com
http://briansharpe.wordpress.com
https://github.com/BrianSharpe

Wombat

Wombat is a set of standalone GLSL procedural noise functions. By standalone we mean it requires no texture sampling or use of any other GPU resources, other than registers and clock cycles. It is ideal for use in cases when texture resources are scarce or when only GLSL code by itself can be provided for shading.

Efficiency has been a primary goal which means aggressive optimization has been applied wherever possible. Attempts have been made to provide for each noise a matching version which also computes analytical derivatives. The noises have been written to have a consistent set of behaviors to facilitate interoperable use. eg

  • Frequency of 1.0
  • C2 continuous ( where applicable )
  • Analytically defined strict output range of either 0.0->1.0 or -1.0->1.0
You might also like...
Authors' implementation of our SIGGRAPH Asia 2021 Technical Communications (Viewport-Resolution Independent Anti-Aliased Ray Marching on Interior Faces in Cube-Map Space) demo II. Fast real-time volume rendering for an external volume texture with mesh occlusion.
Fast single source file BC7/BPTC texture encoder with perceptual metric support

Note: Since this repo was created, we've released two new codecs with better BC7 encoders: https://github.com/richgel999/bc7enc_rdo https://github.com

Texture Packer for Game Development Using MaxRects Algorithm
Texture Packer for Game Development Using MaxRects Algorithm

Overview Texture Packer for Game Development Using MaxRects Algorithm. Note: The game assets used in this example were download from Grassland Tileset

Builds atlas texture from a bunch of input images.
Builds atlas texture from a bunch of input images.

Atlasc @septag atlasc is a command-line program that builds atlas texture from a bunch of input images. Main Features Cross-platform. Runs on linux/ma

Basis Universal GPU Texture Codec
Basis Universal GPU Texture Codec

basis_universal Basis Universal Supercompressed GPU Texture Codec Basis Universal is a "supercompressed" GPU texture data interchange system that supp

Single source file ASTC texture decompression in C++ (derived from Google's open source Android project)

astc_dec astc_dec is a single source file ASTC texture decompressor with the Apache 2.0 license, derived from Google's open source Android sources. Th

this is my simple voxel engine, appart from librairies like glad it is entierly written in C++ and GLSL

simple-voxel-raycaster this is my simple voxel engine, appart from librairies like glad it is entierly written in C++ and GLSL here is a gif: https://

glsl code blocks for org-mode
glsl code blocks for org-mode

GLSL code blocks for Emacs Org-mode This org-mode extension adds the capability to run GLSL code blocks directly from inside Emacs and immediately dis

VSIX Project that provides GLSL language integration.

GLSL language integration (for VS2017, 2019 and 2022) Download this extension from Visual Studio Marketplace version VS2017 & 2019 or VS 2022 preview

Comments
Owner
Brian Sharpe
Brian Sharpe
LLVM IR and optimizer for shaders, including front-end adapters for GLSL and SPIR-V and back-end adapter for GLSL

Licensing LunarGLASS is available via a three clause BSD-style open source license. Goals The primary goals of the LunarGLASS project are: Reduce the

LunarG, Inc. 153 Dec 8, 2022
⚔️ A tool for cross compiling shaders. Convert between GLSL, HLSL, Metal Shader Language, or older versions of GLSL.

A cross compiler for shader languages. Convert between SPIR-V, GLSL / GLSL ES, HLSL, Metal Shader Language, or older versions of a given language. Cross Shader wraps glslang and SPIRV-Cross, exposing a simpler interface to transpile shaders.

Alain Galvan 207 Dec 30, 2022
GLSL optimizer based on Mesa's GLSL compiler. Used to be used in Unity for mobile shader optimization.

GLSL optimizer ⚠️ As of mid-2016, the project is unlikely to have any significant developments. At Unity we are moving to a different shader compilati

Aras Pranckevičius 1.6k Jan 3, 2023
CAN bus extruder, more resistant to noise,reduce a lot of wires for your 3D printer

PandaCAN is an extruder control board that connect to main board with CAN interface, more resistant to signal noise,reduce a lot of wires for your 3D printer.

Mark 87 Nov 11, 2022
A procedural geometry generation library for C++11

Generator - A procedural geometry generation library. The purpose of this library is to easily generate procedural meshes of geometric primitives such

Ilmola 156 Dec 26, 2022
Procedural Generation Experiments

Procedural Generation Experiments What is this? This application is a tool to create and paint L-System in a fully interactive and dynamic way. “But,”

Thomas Munoz 107 Sep 28, 2022
Procedural world generator written in C++. Uses SFML for map rendering.

World Generator Archived as the code is a big mess and it'd be easier to start from scratch than to clean up this code. A procedural world generator i

moneyl 32 Nov 22, 2022
Procedural tree mesh generator (and editor)

ProcTree This is a liberally licensed procedural tree generator in c++, along with an editor HappyTree. (youtube video) The procedural generation itse

Jari Komppa 183 Nov 21, 2022
Simple font renderer library written in Opengl 3.3 using stb_truetype.h to load a packed bitmap into texture of a .ttf font.

mv_easy_font Simple font renderer library written in Opengl 3.3 using stb_truetype.h to load a packed bitmap into texture of a .ttf font. Uses instanc

null 27 May 13, 2022
Stack-based texture generation tool written in C99!

Stack-based texture generation tool written in C99! Brought to you by @zaklaus and contributors Introduction zpl.texed is a cross-platform stack-based

zpl | pushing the boundaries of simplicity. 20 Dec 20, 2022