Part 1: Introduction to Real Time and VR

This first part of the series is where you learn more about real time scenes with VRED.

Video captions: Hello and welcome to this new tutorial series for Autodesk VRED Professional. We are happy to give you an overview of the main features and functions. In addition, we will give you some tips and tricks, as well as hints for building your scenes as optimally as possible for the best possible performance in real time.

Let's start with one of the most important features Autodesk VRED offers, namely, the possibility to generate different outputs: Highly realistic renderings for design development, as well as marketing, physically plausible representations for investigations during product development, such as the visibility of reflections in the windshield or light distribution in the interior, along with the possibility of evaluating three-dimensional, virtual products in real time or experience them immersively with virtual reality glasses to make reliable assessments. Through these easily accessible rendering modes, people across disciplines are empowered to create highly realistic visualizations of their work. Starting with students and on to engineers, designers, and photographers, VRED offers the capabilities of a modern game engine, with a production renderer optimized for highly realistic results in a closed system.

First, let's take a look at the default render mode in VRED, called OpenGL. This rendering technique runs on the installed GPU. Under Help > GL Info, you can check how much video RAM the scene is currently using. At this point, here’s a hint: If you have performance problems, it is a good idea to check the VRAM load. If you are working in a heavy scene with a lot of textures, we recommend using a graphics card with at least 24 GB VRAM.

With OpenGL, there are two major points to note compared to traditional offline rendering: First, the shadows or light are precalculated, and second, the reflections of the environment are currently multiplied into the materials. For this reason, self-reflections within the vehicle, like here at the side mirror, are not rendered. The reflections of the environment are, therefore, visually plausible, but not physically accurate – however, more on that later. The biggest advantage of this rendering mode is the extremely good performance, even with very large data sets and millions of polygons. Using this harbor scene as an example, we can see that even around 65 million polygons can still be rendered with a very good frame rate, depending on the graphics card used. This render mode is also the default render mode, and can be activated with the shortcut, F3. For comparison, you can activate raytracing with the shortcut, F4, and see physically correct reflections.

Basically, the data handling in VRED is an immense benefit. VRED can import classic polygon data from Maya or other digital content creation tools. In addition, extremely high-resolution scan data can also be loaded and visualized in real time. VRED is also able to import different NURBS-based data formats from Catia, Alias, Inventor, or Rhino, with the possibility of keeping the NURBS information. Especially, when optimizing scenes or pre-calculating shadows, this is quite an advantage, as it allows non-destructive work. Plus, the scene structure can be preserved from the respective design or construction software.

Pre-calculation of shadows and lights is an important tool that adds plasticity and depth to the 3D model and increases the visual credibility of the rendering in real time. Note, that this rendering can be accessed with the shortcut, F7. VRED offers different strategies for this. Regardless of the visual result, two basic approaches can be highlighted: vertex-based baking and texture-based baking. It is important to understand these two basic principles, because depending on the initial geometry or use case, one or the other may be more appropriate. And, while we are on the subject of shortcuts, you can use the F5 shortcut to enter Normal Rendering mode, just ensure the normals of your geometry are correctly aligned before calculating the shadow.

Vertex-based baking writes the light and shadow information into the respective vertex points of the geometry. This means that no special UV layout is necessary; however, it may be necessary to change the tessellation of the geometry, in order to create soft shadows or strong core shadows around small parts. This results in an increase in polygon count and cannot be undone for mesh-based geometry. However, if the geometry consists of NURBS, this is not a problem and can be easily reset. So, this user-friendly process makes it very easy to pre-calculate highlights and shadows.

It is best to take a quick look at this example. The geometry has a pre-calculated vertex-based shadow, but it is not very clean. We can optimize the shadow by enabling the "Subdivisions" in the Bake Lights and Shadows module. This allows VRED to tessellate the geometry in problematic areas. However, as mentioned before, this will increase the polygon count. If we want to reduce it again or try other calculation settings, we can easily re-tessellate the geometry and reset it to its original state. But please remember, re-tessellation is only possible if the NURBS data of the respective geometry is stored!

Texture-based baking, on the other hand, uses either an existing UV layout or an automatically processed UV layout to calculate lightmaps mapped onto the geometry as a texture. These textures can also be saved externally and exported. In addition, several completely different light scenarios, such as day and night, can be pre-calculated and changed within a scene. However, this requires clean lightmap UVs, which can make the process a bit more complicated or requires corresponding preparatory work via the UV Editor.

Fortunately, VRED allows us to combine both techniques. This allows us to iteratively determine which technique is best for the geometry at hand.

For example, a typical use case for texture baking is large-scale geometries consisting of a few polygons, like these floor plates.

By the way, you can control the UVs of the material and lightmap channel via Scene > UV Editor. This container wall, for example, has good UVs because the UV space is filled reasonably and there are no overlaps. Also, under the tab, UV Sets, you can compare the UV Sets of the materials and lightmaps. If the UVs of your geometry are incorrect, you can either let VRED unwind them automatically or correct them manually. Just try what fits best! Now, back to the Baking modes.

Within these two basic settings, VRED allows us to define the Illumination Mode. Here Ambient Occlusion is the easiest way to create shadows. However, possible light sources and light directions are ignored, since only the faded geometry is considered in the calculation. The Minimum and Maximum Distance sliders can be used to define the radius within which objects are included in the calculation. By reducing this distance, the contrast within the Ambient Occlusion calculation can be increased. In this respect, it is advisable to work with lower values in the interior. It is also important to use the same settings for directly adjacent geometries; otherwise, differences in brightness may occur. The respective settings can be easily read out under Bake Light and Shadows > Settings > Load from Node.

The next Direct Illumination mode, called Shadows, on the other hand, allows us to generate a realistic representation of shadow information. Here, active light sources, such as our HDRI environment, are included in the calculation. Consequently, with the Light and Shadows mode enabled, light information is also generated.

In summary, VRED tries to bake the light and shadow information that makes a full global illumination rendering look so realistic into the vertices or into a texture, so we can present this visual quality in real time.

Last, but not least, the Screen Space Ambient Occlusion feature must be mentioned. This feature, found under Visualization > Advanced OpenGL Settings > Screen Space Ambient Occlusion Settings, overrides the pre-calculated ambient occlusion, no matter whether it is vertex- or texture-based. Thus, this feature can be used to create initial shadows with just a few mouse clicks. It should be noted, however, that pre-calculated shadows can be displayed better. In addition, the activated Screen Space Ambient Occlusion mode reduces performance in real time.

Finally, a few words on another essential element for realistic rendering: the use of HDRI maps. Photographed HDRIs create reflections on the vehicle geometry with a few mouse clicks, thereby increasing the realism of the scene and quality of the materials. At the same time, the HDRI can be faded in or out as an environment to stage the vehicle very quickly and easily in a spatial context.

At this point, here are some short notes on the use of HDRIs, in advance. First, we recommend to use the .hdr format, instead of the .exr format. Second, keep an eye on the size of your HDRI map. Depending on the purpose, resolutions of 8 - 16K are perfectly sufficient. Both points are important, as you can easily save VRAM and your file size won't explode.

Thank you for watching and we will see you next time!