Wednesday, July 30, 2014

3D Texture Generator

The Idea

When I took a computer graphics course as part of my master's degree I learned about using textures and skins to make objects more life-like. In one lecture we touched briefly on the idea of 3D textures which can be applied to voxels in a volume or in slices to surfaces. From there I realized there could be value in creating realistic 3D textures to be used in a variety of contexts.

The world is naturally perceived in three dimension. Instead of trying to draw a realistic looking 2D picture you could instead create a realistic 3D volume and slice out whatever surface you need to display. The main advantage of this method is the ability to parametrically generate 3D volumes using actual material properties. The visual properties are essential - color, reflectivity, scattering - but even mechanical, electrical and chemical properties could be used to generate aggregate materials. For example, you could create a realistic 3D concrete texture using the properties of cement, gravel, sand, etc. A program could accept inputs for material types and mix ratios, calculate the resulting structure, and apply the resulting visuals to the structure.

By compiling a large number of such calculators you could create a software package (web-based?) that can create 3D textures for many different materials. It could be a handy tools in the belt of computer graphics programmers. It might save them alot of work, and give them a way to easily add variety to their projects. Textures could be randomly generated each time and cut down on the amount of repetition in games, movies, etc.

Progress

I'm not actively pursuing this idea right now. I'm not a full-fledged programmer, and one of my pet-peeves is bad software written by someone totally disconnected from the end-user. If my career ever moves towards the gaming industry then I will come back to revisit this.

No comments:

Post a Comment