PBR Workflow: Reflecting a Scene with Physically Based Rendering

This article applies to environment exported as GLTF to allow the use of its realtime lighting. For fully baked scenes both the ambient and specular reflections can be produced from the scene itself.

Environment Maps
There are a few options other than Lys. The two main free ones to look at are Modified CubeMapGen and IBL Baker. Both have their quirks. When building maps from existing HDR cylindrical maps such as you would find on HDRI Haven, our source for most of the built in maps, Lys is the best choice for clean results. Last I checked the old photoshop DDS plugin still works on current versions of photoshop.

To use the result of a render from Max in Lys, you'd do best to save out a cylindrical panorama as a .HDR file and use the Load Panorama button.

Captured from the Scene
Reflection maps mean to represent the existing scene should almost never be generated inside 3ds Max - we're aiming to reflect how Vizard sees objects, not how 3ds Max does. We render those from Inspector instead. The documentation that recommends using 3ds max predates this option and is outdated.

Frustratingly enough Lys currently has an error loading DDS cube maps despite writing them just fine, so cubemapgen is the better option despite looking so outdated.
Read more

PBR Workflow: Tools, Resources and Additional Reading

Banner Image

An Industry-Wide Revolution

The addition of physically based rendering to WorldViz products brings us into the fold of an industry-wide revolution in artist workflows. Physically based rendering has a few new concepts and methods compared to older methods, as well as some amazing new capabilities that simplify artist workflows an make sure that once an asset has been made once, it can be used anywhere without having to retouch the source files. This is a list of tools and resources to help you on your way.

Krzysztof Narkowicz's Interactive PBR Example

The most intuitive way to get a feel for the capabilities of a shader is often to simply mess around with some sliders and see how it responds. Krzysztof Narkowicz's embedded below from Shadertoy does just that, and even includes a realtime display of what's going on at the microsurface level.


Permalink: https://www.shadertoy.com/view/4sSfzK

Babylon.js GLTF Exporter for 3DS Max

At the moment, the best way to export models for use with Vizard's new PBR workflow is the GLTF format. GLTF stands for GL Transmission Format, and is designed as an engine-neutral way to deliver models ready for use with PBR conventions. The most popular GLTF exporter for 3ds Max is the one produced by the good people at the Babylon.js project.

Instructions for download and use can be found here:
https://doc.babylonjs.com/resources/3dsmax_to_gltf

Be sure to use the "scale factor" option to convert the units to meters for Vizard/Vizible use. e.g. if your 3ds max system unit is set to 1 unit = 1 cm, the scale factor to use in the exporter is 0.01.

Comparison to the old OSGB workflow

One of the awesome things about the approach is that cube maps are now part of environments instead of individual objects, so objects can be easily transferred between scenes and just reflect what's around them. This is as compared to having to manage reflections on a per-object basis with the old OSGB workflow, and having to replace them on every object anytime you want to bring it to a new scene. With this workflow, you make a prop once and it's done forever.
Read more

Baking Lighting in 3ds Max: A General Overview, Part 2

Header_Baking_20171128

Baking in Max can be a daunting process. Last time, in Part 1 we talked about what you need to get started, options for renderers, a few of the different kinds of bakes you can do, plus how and why to do test renders.

Part 2

This time, in Part 2, we go into the approach for Unwrapping, the details of Render to Texture, and the actual baking.

Part 1 | Part 2

Initial Bake

Baking_Seq_3_Baking

Unwrap Model
Bakes work by recording the lighting intensity for each point on a model's surface into a texture. This means that, under normal circumstances, you don't want any overlaps or tiling used in the UV channel that you bake to otherwise you may have some very strange results in your baked lighting. While unwrapping by hand produces the best results, automatic unwraps are usually more than enough. Bake UVs are usually unwrapped to channel 3.

There are a few common options for creating lightmap UVs for large numbers of objects. One is to use the automatic unwrap feature of Render to Texture, though this always groups matching material IDs together resulting in a lot of wasted UV space. Another option is to use a scripted tool written in-house called SteamRoller, which does a similar function but isolated from any other dialog and without requiring the material ID option. Paid plugins also exists that can do unwrapping, some of which also have their own special baking options.

UnwrapExample_20171205_short
Read more

Baking Lighting in 3ds Max: A General Overview, Part 1

Header_Baking_20171128

Baking in Max can be a daunting process. There are numerous choices, and it may be unclear what is going to give the ideal results. This guide gives a general overview of the process to take your work from an unbaked model to final baked scene.

Part 1

In this first section, we talk about what you need to get started, options for renderers, a few of the different kinds of bakes you can do, plus how and why to do test renders, and what mesh issues to look out for.

Part 1 | Part 2

Starting Out

Baking_Seq_1_Start

Ready to Go
Before you're ready to bake, you'll ideally have a scene that's realtime ready. This usually means a low-ish polycount (under 2 million), Scanline:Standard materials, and bitmap based textures instead of procedural ones. While it's possible to bake high polycount objects, such as unoptimized architecture scenes, they may take an exceptionally long time to unwrap, and may also have trouble running once exported.

You'll also want to have some familiarity with the OSG Exporter, but if not you can also start off by loading up the sample preset file from the Storing and Loading OSG Settings tutorial.

Baking_house Read more

Skydomes and the OSG Background Map Export Setting

BGMap_Header_20170825

Many scenes benefit from having a skydome in the background - an image of a sky that replaces the flat background color of a scene. The easiest way to do this with an OSG Export is to take advantage of the exporter's "Background Map" feature. This feature automatically generates an infinitely distant skydome that will never accidentally cut off our models or mess with your model's clip plane.

At the moment HDRI skydomes are not supported, but this feature may be coming sometime in the future.

Where to Get a Sky Texture

You can start off by grabbing high quality skydomes off of places like https://www.cgskies.com/, stock texture sites, or make your own with a 360 camera on a tripod (such as the Ricoh Theta) and capture through its associated remote shutter app. Various other solutions for capturing professional panoramas exist as well, such as incremental nodal camera mounts (e.g. Nodal Ninja) or automated heads (e.g. Gigapan), though these methods may have trouble stitching together moving objects such as clouds.

Here's a sample spherical panorama you can grab for testing, captured with an older Theta. The Theta has some stitching artifacts where the edges of its two lenses come together, but this is most noticeable when placed directly on a flat surface instead of a tripod. This version of the Theta also has a noticeable amount of color noise, even when shooting in well-lit situations with a low ISO.

In this example the tripod was originally visible, edited out in Photoshop using the polar coordinates filter and content aware fill, and the photographer (yours truly) was also removed using content aware fill. This sky texture has a small worldviz logo watermark at the very bottom which should not typically be visible unless a user manages to look underneath the ground.

panorama_wv2 Read more

What is… Textures.com?

texturescom_header

Textures.com, formerly CGTextures.com, is a subscription based stock resource website for texture maps. Depending on the subscription level, the user has a certain number of credits per month to use on textures. There is also a free option with a small number of credits that regenerate on a daily basis.

texcom_frontpage

The textures are royalty free for both commercial and noncommercial use, are high resolution, and have been processed to remove distortion, color cast, and in some cases to add tiling. They are distributed at multiple sizes, with larger sizes requiring more credits.
Read more

What is… Crazybump?

crazybump-title_2

Crazybump is a tool that analyzes a source texture such as a diffuse map and attempts to generate additional supplementary maps based on that analysis. It has been in use by numerous professionals in 3d graphics since its beta was first released in 2007.

crazybump_input

Crazybump is especially useful for generating tangent space normal maps, but can be used to create approximate height and specular maps, and a few other types. Many of these types of maps can be slow and difficult to create by hand or with freeware tools.
Read more

Creating a toon effect in 3ds Max

Watch the video tutorial in this article to learn how to add a black border around a model in 3ds Max, giving it a toon-like appearance. With just a couple short steps you'll be able to add the same effect to your own models.
Read more