» EX9.Spaces
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

EX9.Spaces

French | Italian

In 3d graphics its common to talk about different spaces, when actually meaning coordiante systems of different 'views'.

  • object space
  • world space (aka model space)
  • view space (aka camera space)
  • projection space (aka screen space, clip space, image space)
  • texture space

todo: patch that visualizes the spaces with Axis.v4p

Object Space

The coordinate space in which the vertices of a mesh are specified is called the object space. When preparing meshes for use in vvvv it makes sense to think about the objects spaces dimensions. If you need realistic scaling from between different meshes you'd best think of one unit in object space being equal to 1 meter in real life.

Otherwise if you're just dealing with a bunch of objects that need no special sice it's often useful to keep their vertices within a 1 unit cube.

World Space

The coordinate system of the 3d scene is called the world space. When placing a Mesh into world space it first sits with its own center at the worlds center. To position a Mesh in the scene its vertex positions are multiplied with a so called WorldMatrix. The WorldMatrix is the transform input pin directly on the Effect node.

View Space

View space is the coordinate system relative to the camera. To place a Mesh into the view space its vertex positions (in world space) are multiplied by the ViewMatrix. The ViewMatrix is specified via the view transform input on the Renderer (EX9) node. It defines position and rotation of the camera.

Projection Space

The projection space finally is the 2d space of the screen. To project a Mesh onto the screen its vertex positions (in view space) are multiplied by the ProjectionMatrix. The ProjectionMatrix is specified via the projection transform input on the Renderer (EX9) node.

Texture Space

Texture space is the 2d coordinate system of a texture, ranging from 0/0 (topleft) to 1/1 (bottomright). It is used by the sampler to lookup for pixels at a particular position in a texture. msdn about Texture Coordinates

anonymous user login

Shoutbox

~7h ago

Urbankind: circuitb:Wrongcop is epic! :)

~8h ago

joreg: @tobi: use GetSlice() as the patch i referred you to is demonstrating. or start a forum thread with your patch.

~8h ago

TobiTobsen123: hmm yes i can see the values...but how to handle them as seperate values? I need to forward them via TCP/IP...

~9h ago

joreg: @tobi: OSCDecoder helppatch has a section: OSC_Advanced (bottomright) that demoes decoding of multiple messages

~10h ago

TobiTobsen123: I'm using an OSCDecoder, it receives two arguments...works but how can I seperate the arguments into two seperate values

~12h ago

u7angel: @mediadog, make it a forum question.

~13h ago

u7angel: @mediadog, tty renderer ?

~15h ago

microdee: however non-conductive objects are invisible for this so the pencil and the sticks in the video are still a mysteries