Viz Artist User Guide

Version 5.2 | Published March 20, 2024 ©

Instancing

images/download/thumbnails/125456200/image2023-5-31_15-15-52.png images/download/thumbnails/125456200/image2023-5-31_15-13-43.png

Viz Engine 5 introduces an efficient way to render a single object multiple times. It requires a minimum amount of drawcalls to the GPU and reduces the time to render these objects dramatically. The required information is uploaded to the GPU only once, which allows to draw a lot of copies very efficiently:

images/download/attachments/125456200/image-2023-8-9_11-48-44.png


To setup this type of rendering, two new plug-ins are required, an Instancer and a Producer plug-in.

Icon

Description

images/download/thumbnails/125456200/image2023-5-31_15-15-49.png

Defines the geometry and look for our setup. Put this plug-in on your geometry to be instanced.

You need to define the container holding the corresponding Producer plug-in in the User Interface.

images/download/thumbnails/125456200/image2023-5-31_15-13-432.png

Uses the defined geometry and distributes them among its subcontainers.


Example

  • Create a sample geometry, like in our example a Tree and put it as a Subcontainer.

  • Apply the Instance plug-in to it.

    images/download/attachments/125456200/image2023-5-31_15-16-37.png


    images/download/attachments/125456200/image2022-8-22_14-52-57.png

Our example tree has about 3.2 million vertices and our scene requires 17 drawcalls:

  • Create a target container.

  • Use Cloner or a similar plug-in to create a certain amount of sub containers. In our example we want to have 40 clones, divided into eight rows and five columns.

    Note: Remember to put one container as a source container underneath the target if you are using Cloner.

  • Apply the Instancing plug-in on it.

  • In the Producer plug-in, defines our target container as producer container.

images/download/attachments/125456200/image2023-5-31_15-16-58.png

We now have 40 trees.

images/download/attachments/125456200/image2022-8-22_14-57-31.png

Giving some rotation and scaling differences as well as some offsets to the XZ position would look make it more realistic.

Note: Not all features are available for instanced objects (for example, shadowing and global illumination).