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

Rendering overview


Basic structure

In most situations when you render something you have basically the same patch structure:

  1. some primitives (like the Quad (DX9) ) or meshes with their effects (like the Sphere (EX9.Geometry) and PhongDirectional (EX9.Effect) )
  2. are placed using the Transformation nodes (like the Translate (Transform) or UniformScale (Transform) )
  3. grouped together
  4. and rendered to a window.

Working with a 3d scene? You need a Depthbuffer.

Seeing jagged and ugly edges? Turn on Antialiasing.

Want to set a renderer to fullscreen?

  • move it to the desired monitor
  • change its Fullscreen Dimensions using the Inspektor
  • press ALT+Enter to toggle it to/from fullscreen

See the Renderer (EX9)'s helppatch for details.

Examples in your vvvv\girlpower\ directory:

  • Graphics\DX9\Geometry
  • Graphics\DX9\Shader

See also:


The same scene but rendered from another point of view. Note the Camera (Transform Softimage) connected to the Renderer.

There are some cameras in vvvv ready to use:
Check their helppatches.

See also:


And now the objects are spreaded.
There are 12 spheres whose spreaded in a circle by the CircularSpread (Spreads).
And 16 quads arranged in a line by the LinearSpread (Spreads).

See also:

Aspect Ratio

The Aspect Ratio transformation on the Renderer (hidden by default) is used to sqeeze/stretch the coordinate system of the renderer so that the proportions of the window have no effect on the image.

The coordinate system of the Renderer is stretched vertically as a countermeasure to its horizontally stretched window.

Check the helppatch of the AspectRatio (Transform).

See also:


An image is applied to the effect via its Texture. Primitives like Quad (DX9) have the 'Texture' pin as well.

See also:


Related nodes

Renderer (EX9)
ZWriteEnable (EX9.RenderState)
AlphaTest (EX9.Renderstate)
Cull (EX9.Renderstate)

A Depthbuffer stores the depth information of the scene, ie. a single z-value per pixel.

If depth buffering is off (which is the default) objects (and their faces) are just drawn in the order of their priority and their slice index - which looks weird as soon as they are seen in the wrong order.

Turn on depth buffering by selecting the Renderer (EX9) in an Inspektor. There you'll see a "Windowed Depthbuffer" and a "Fullscreen Depthbuffer" pin. Change their default "None" values to D16, D24 (or similar, where 16 or 24 denote the number of bits available for the depth buffer). Typically choose D24X8.

The classic name for drawing without the depth-buffer is painters algorithm: start with the things in the background and then paint all things after another on top of it.

Using the depthbuffer enables a test which is done for each pixel drawn: if a pixel nearer to the camera was already drawn, the new pixel gets rejected. Or to put it the other way round: If the current object to be drawn is nearer to the camera than the stuff already drawn, the object is just drawn on top of the existing color buffer.

See also:


Antialiasing at Mathworld
Antialiasing at Wikipedia

Rotated or curved objects always look jagged if Antialiasing is turned off (which is the default). That's because pixels are squares and there are (still) not so many of them to represent curves or diagonals in a way that the eye will not notice squares.

Use the 'Fullscreen / Windowed Antialiasing Quality' settings of the Renderer (DX9) to specify the desired quality. Usually a value of 4 is a good choice.

This setting is available via Inspektor.

anonymous user login


~26d ago

manuel: very cool to generate matcap / cubemap for reflections https://cables.gl/p/pDCOCw

~27d ago

joreg: Join us for the 19th #vvvv meetup on November 11th: https://thenodeinstitute.org/event/19-worldwide-vvvv-meetup/

~1mth ago

~2mth ago

joreg: @zaid please ask this in the forum: https://discourse.vvvv.org/

~2mth ago

zaid: how can i detect a changing spread in gamma? the old workflow with a change and select node isnt possible. cheers

~2mth ago

joreg: @dawoof such a question is probably better asked in the forum or chat

~2mth ago

dawoof: hey vvvvers, What are yall's fav depth-camera for body tracking? (dancing in this case) eyeing the ZED but the delivery time is long