M2R project :
« Revisiting procedural noise »



Advisor

Fabrice NEYRET   - Maverick team, LJK, at INRIA-Montbonnot (Grenoble)



Context

Procedural noise like Perlin noise allows movies and video game artists to generate on the fly very detailed natural-looking stochastic textures, or even volumetric density fields. Alas they are uneasy to control finely, and pretty limited in the reachable expressive space. In particular, many real-world textures are anisotropic (see images above), which requires to specify varying stretch amount and direction everywhere, and real-world texture heterogeneity often have some structure (e.g. holes). Some way more costly methods like Gabor noise give more control of the look, but generally in the aim of generating homogeneous fields, unlike the examples above, and requires way to many parameters (thus hard to design and yielding costly storage and evaluation). And when it come to animation ( e.g. solar flares, exploding nebula ) nothing usable is available. Our main target application in mind relates to astrophysics uses, but the need for reacher procedural models is generic in Computer Graphics.


Description of the subject

The purpose is to enrich the limited set of procedural noise algorithms, for the synthesis of large, detailed and deep stochastic structures as (and not limited to) above, either 2D or volumetric, possibly animated, compatible with real-time applications, and reasonably easy for a user to design. We already have a set of possible ingredients from early experiments: the concept of unitary multiplicative noise (cf this shadertoy), the concept of pushing-bubbles noise (cf this shadertoy), the idea of mixing the best of Perlin and Gabor models (replacing the Perlin wavelet at nodes of the hierarchical grid by Gabor kernels, cf this shadertoy), and several previous work in the management of anisotropy by local deformation of isotropic noise (master reports 1 (+shaders) , 2 (+shaders) , 3 (+shaders) , 4 ).


Prerequisite

References