Joshua Bufton

3D Grass Generator

As part of my 3rd year innovations unit at the NCCA I created a 3D grass generator focused on using mathematical methods to improve generation speed. (Textured and Rendered result can be seen above)

The aim of this project was to take an initial method of 3D geometric grass generation and then use various mathematical methods and techniques to improve the grass generation speed.

To make the program I used QT and NGL (NCCA Graphics Library). I approached the challenge of generating 3D geometric grass in 2 steps: shape generation and mesh generation. Initially I used a vector based technique which I came up with myself (Outlined in the report linked below) but soon changed to using Bezier curves and included a patched LOD (Level of Detail) technique to reduce the amount of detail required to be generated in the furthest away blades of grass. The program allows the user to define a large variety of preferences including grassblade width and width variance as well as generated field size.

If you would like to read more about this project you can download the report I wrote on it here:

You can also download the project here on GitHub