Skip to content

16. 3D Concepts

Dated: 13-05-2025

Coordinate Systems

These are measured frames of references in which geometry is

  • Defined
  • Manipulated
  • Viewed

1D Coordinate System

  • Origin as reference and has direction and magnitude along a single axis.
  • Locations are defined by a single coordinate.
  • Can define
    • points
    • segments
    • lines
    • rays

2D Coordinate System

  • Origin as reference and has direction and magnitude along 2 axes.
  • Locations are defined by coordinate pair \((x, y)\).
  • Can define
    • curves
    • polygons
    • 1D entities

3D Coordinate System

  • Origin as reference and has direction and magnitude along 3 axes.
  • Locations are defined by coordinate triplet \((x, y, z)\).
  • Can define
    • cubes
    • cones
    • spheres
    • Volumes in space
    • 1D and 2D entities

Left-handed versus Right-handed

cs602_e_16_1.svg

Left Hand

cs602_e_16_2.svg

Right Hand

Mostly the right handed rule is used but cameras use left handed rule.

Professional Choices

Typically

cs602_e_16_3.svg

Designers Choice

cs602_e_16_2.svg

Animators Choice

Global Vs Local Coordinates

  • Local coordinates are relative to the object
  • Global coordinates are relative to the world

Multiple Frames of Reference within a 3D Scene

cs602_i_16_1.png

Defining Points in C

typedef struct {
    float x;
    float y;
    float z;
} Point3D;

The Polar Coordinate System

These are generally not used in 3D graphics because the math is often harder and these are hard to manipulate comparatively.

Defining Geometry in 3D

Modeling

It is the process of describing an object or scene so that we can construct an image of it.

Primitives

These are fundamental geometric entities within a given data structure.

  • Points
  • Vectors1
  • Polygons
  • Polygon strips
  • Meshes

Meshes provide continuity across surfaces which is important for shading calculations.

cs602_i_16_2.png

A mesh of a dolphin

cs602_e_16_4.svg

A quad strip

cs602_e_16_5.svg

A triangle strip

Rendering

It is the process of constructing an image, using a combination of

  • A 3D database
  • Scene characteristics
  • Viewing transformations

Different algorithms are employed for different rendering applications.

Tessellation

It is the process of dividing an entity or surface into multiple disjoint primitives.
Renderers typically decompose surfaces into triangles as part of the rendering process.

Sampling

The process of selecting a representative but finite number of values along a continuous function2 sufficient to render a reasonable approximation of the function for the task at hand.

Level of Detail (LOD)

Depending on the importance of a certain entity in the image, different versions (varying in details) of a model can be swapped out dynamically from the scene database.

Surface Models

These can be constructed from the mathematical descriptions.

Meta Balls (blobs)

Potential functions3 (usually radially symmetric Gaussian functions) are used to define surfaces surrounding points.

References


  1. Read more about vectors

  2. Read more about continuity

  3. Read more about functions