Wednesday, 15 October 2014

Blog 2: Coordinate Spaces

There are six coordinate spaces used in games and computer graphics when transforming geometry which are: object space, world space, view space, clip space, normalized device space, and screen space.

-          Object Space: Object space is the position of the object’s vertices specified relative to a Cartesian coordinate system. The object space origin is usually placed at the centre of the object. Object space is also known as model space or local space. Objects will have three axis along object space origin called front, up, and left/right.
o   Front: This axis points in the direction that the object is travelling or facing.
o   Up: This axis points towards the top of the object.
o   Left/Right: This axis points towards the left or right depending on whether the game engine uses left-handed or right-handed coordinates.

-          World Space: World space is a fixed coordinate space, where the positions, orientations and scales of all objects in the game world are expressed. World space ties all the individual objects together into the game world. The world space origin can be at any location the developers decide, but is often near the centre of the playable game space.

-          View Space: View space is a coordinate frame fixed to the camera. View space is the world relative to the location of the viewer. The view space origin is located at the focal point of the camera. View space is also known as eye space or camera space. The camera faces in the opposite direction between the left-handed and right-handed coordinate system.
o   Left-Handed Coordinate: The camera is facing towards positive Z.
o   Right-Handed Coordinate: The camera is facing towards negative Z.

-          Clip Space: Clip space is where entities are projected before projecting objects to the screen. The clip space will decide whether the vertex will be culled or not outside the frustum. Applying a projection will get the entities from view space to clip space.

-          Normalized Device Coordinates (NDC): Normalized device coordinates creates a coordinate system that define positions of the objects in view. After applying a projection to clip space, the points will not be normalized. This can be fixed by dividing all components of the vertex by ‘w’.

-          Screen Space: Screen space is where all objects are rendered to screen space. The screen space is a 2D space. The screen space origin is in the middle of the screen. The screen space is also known as window space.


http://www.gamerendering.com/wp-content/uploads/geometrypipeline.jpg