About the Project
The displacement values are simply created by averaging the music per the number of vertices in the mesh. Music usually contains 44,100 samples per second and lasts around 1-2 minutes long. Each sample usually stores a signed 16 bit value containing the amplitude. This can then be two 16 bit values to make up each channel of stereo.
For the texturing, we simply create a new texture image from a storage of images by overlaying multiple layers of noise as alpha maps. This then gets applied to the terrain as a projection map to emulate the different deposits at different heights. It also creates a basic bump map for the textures as well.
Music Terrain Generator was my first Maya Python scripting project. I had done previous projects in Python before this project but those were entirely in Python using SQL databases to create bookings software for a carpet firm. This project was also before I had learnt about OpenMaya or PyMel, which are both much better than standard maya.cmds commands in Maya in either speed or ease of use. I feel the project was very successful as I was able to create an overall well rounded script with an easy to use GUI that creates appealing results.