Introduction to 3D

This is an introduction to 3D computer graphics for total rookies. If you are a 3D artist no need to read it - you already know it all :-) But often my friends ask me "what is this 3D about?", "how do you work?", "how you create such images?". Usually I answer: I play God ;-) , I create Matrix, something which looks like real world, but does not really exist.
Well, maybe our 'real' world is also just a set of mathematic relations dancing on the multidimensional fabric of space?

We live in 3 dimensional world, but our eyes catch just two dimensional images of environment created on retina. It is our brain which translates those 2D images to some kind of perceptual 3D concept we perceive as our environment. Same happens when we see an image on 2 dimensional screen. Let it be a photo of a real cube, or just a computer synthesized image of the cube :

Rubik Cubes - real & virtual

Both images of the cube are 2 dimensional = flat, but our brain recreates the 3 dimensional concept of those cubes, and we perceive them to be some objects with volume in 3 dimensions. With computer synthesized 3D images, the point is to create on the screen a 2D image which gives impression to be in 3D.

Computer stores in memory mathematical representation of objects geometry ex. spatial positions of object vertices. Those objects don't exist - we say they are virtual. They just become visible as result of mathematical calculations creating 2D image on screen called 3D rendering.

Creation of 3D computer graphics can be split in separate processes :

Modeling - defining computer model of objects geometry (shape)
Texturing - defining characteristics of materials for 3D objects surfaces.
Layout - spatial placement of objects in the 3D scene.
Animation - defines changes of layout, shapes etc in time.
Rendering - computer calculations transforming 3D scene data into image.

Modeling consist of defining a mathematical representation of a 3 dimensional surface of an object. It results in matrix defining spatial positions of points, and matrix defining polygons (small triangles or quadrangles with points at their edges).

Mathematical definition of 3D geometry

Today those processes are automated, so model designer just select some predefined objects (ex. pyramid) and then modifies it further :

3D model transformations

Texturing
: process defining characteristics of geometry surface - shaders/materials are created. Another process consosts of attaching those materials properly to object geomety - it is called texture mapping.

Defining material for 3D object

Layout
stage consists in setting the scene in virtual environment : define positions & sizes of objects, cameras, lights, environment (ex. fog, clouds, sky)

3D scene setup (layout)

Animation
consists in defining changes in the scene elements over time. Camera can change position, objects can move, transform their shape or materials etc.

Rendering: is the process of computer calculations transforming 3D models into images.
There are various techniques to achieve this. Today the hype is on unbiased renderers realistically simulating materials properties & lighting wih help of graphic cards. This allows very significant speedup of rendering time. Ex. render in matter of minutes what required hours or days on CPU. (ex. Octan render)

example of 3D rendering

Complete 3D packages such as Maya, 3D Studio, Cinema 4D, Softimage, Lightwave etc... can proceed with each stage, from modeling to rendering.
Narrower functionality 3D software focus on modeling (ex. Hexagon, Sculptris), scene layout & rendering (ex. Bryce, Vue d'Esprit), or texturing (ex. Bodypaint). There are also serparate rendering programs usually used as plugins in large 3D applications (RenderMan, Vray, Octane etc...) There are also differences in efficiency of rendering algorithms which result in different rendering time and quality.

3D software is of various quality & reliability. Some have very intuitive interfaces, some are convoluted and require many years to learn. Some are simple, purpose based, some are huge and can do almost everything. Some are rock solid, some crash very often.

Usually less reliable and less versatile software is sold with lower price to hobbyists.

Large film studios tend to use more reliable & complete but very expensive packages, or even develop their own software (which often is later sold as large 3D packages to other 3D professionals)

Hobbyist grade software :
Bryce, Vue d'Esprit, Terragen, Carrara, Poser, DAZ Studio, Sculptris

Studio grade software :
Maya, Softimage, Modo, Cinema 4D, 3DS Max, LightWave

In next sections you can find descriptions of some 3D software I worked with.


MAIN PAGE

DIRECT LINK TO THIS PAGE


From matrix of numbers to perception of virtual reality : From stream of numbers to impresion of reality

This is how we pass from endless stream of numeric data to rendered image, which our brains takes for real. No flash, no blood, just endless set of numbers - this is no longer science-fiction, this is real virtual-reality. It happens now.

Matrix Woman in Red Dress

Fortunately in modern applications while defining 3D environment we don't need to deal with all those numbers. Many 3D modeling applications lets us sculpt and manipulate 3D objects similarly to clay. ex. Mudbox :

Mudbox interface

However in some procedural modeling tools (like The Plant Factory or Terragen 3) we get closer to "matrix". TPF 3D models are often huge graphs made of hundreds nodes, and in each vegetation node, hundreds parameters to define. Those complex graphs are basically algorithms generating 3D model geometry according to rules defined by model engineer. Intentionally I put "engineer" instead of "artist" because procedure is closer to analogue computer programming than to painting or sculpting. e-on software uses the same graph approach for materials or procedural terrains.

The Plant Factory complex  graph  & parameters
Read more about Queen Palm model

A.C. Clarke was right saying "advanced technology is indistinguishable from magic"

I was even closer to "matrix" when I coded old Solid Growth plants for e-on. It was Lindenmayer text only system. So don't comply about TPF complexity ;-)

SolidGrowth Lindenmayer  system for virtual vegetation

Well 3D graphics made astounding progress since I used my first 3D software on Commodore Amiga 500 - Videoscape & Sculpt 3D:

VideoScape 3D on AmigaSculpt3D on Amiga Modeling on Amiga (Video)

Here is the famous Juggler movie made on Amiga with Videoscape in 1986.

Juggler 3D movie made on Amiga 500 in 1986