Alan Davies' Portfolio Site

Dissertation – Procedural Materials


A project about the creation of procedural textures with shader effects in computer graphics, utilising processing power to simulate real materials.


About:

This project involved the development of textures through mathematical algorithms based on the works of Ken Perlin (1983); the technique has to generate texture/materials that utilise the chaotic nature of Perlin noise to skew sine waves. Using a shader pipeline, I passed pixel data through Perlin noise to create a unique effect, processed by mathematical expression rather than data from an image file.

My dissertation researched the creation of procedural textures to research the possibility of generating 3D textures - rather than simply using 2D textures. I developed the project on OpenGL(with GLSL) and migrated it to DirectX 11 (with HLSL); this provided me with a greater understanding of the application of shaders and the ability to transfer shaders code/pipelines between different languages.

The final goal was to generate “procedural materials for video game assets”, I finalised my project by creating the textures procedurally in Unreal Engine 4, applying the textures into the channel of a default model provided (First Person Shooter gun model).

Final renders



Results/Findings:

Although there are differences, OpenGL presented a UI mapping bug that misaligned with the model; as a result, the development was translated onto DirectX 11 and adapted for use in Unreal Engine 4.

Below is a demonstration of the sine function, providing a basis for the texture generation; by aligning a coefficient of the sine function to the progression of time, we can see the texture begins to iterate through variations through the underlying Perlin noise.

Sine Wave Testing


Created with: C/C++, OpenGL, DirectX and Unreal Engine 4

My hypothesis with the texture bug seemed linked to OpenGL and how it imports models from Autodesk 3ds Max. The model appeared to have some sections of the mesh incorrectly formatted and thus inverted; rendering the image on both sides revealed a misaligned chunk of the texture.


Created by Alan Davies, 2016.

Supervised by Paul Angel & Carl Jones (2016, University of South Wales).


Return

|

Alan Davies. © 2024