Monday, December 3, 2012

Vray Displacement Map Rendering Artifacts: Solution

Ah fuck! So 4 weeks of testing and 2 hours + of preparing a post for online questioning and then I solve the damned thing 5 minutes later. Guess that is good. Now to understand where the issue was coming from.

It was these damned settings!
View dependent - UNCHECK THE FUCKER
edge length may not be the main factor but I changed both.

Artifact Free Final Result

Zbrush Displacement into Vray without issue?

I've assigned myself a simple personal project to test the displacement from zbrush into maya\ vray. My simple personal project has turned disastrous. Firstly, I can render the geometry as is nor convert it to a vray proxy as it is too big.

I've done everything I can and re-uved the damned thing a dozen times. For some reason I still get holes in my geo. Please help...someone. Thanks!

Sculpted result in Zbrush - divided 7 times so as to avoid jaggedness around letters.

Made three poly groups to maximize UV space during UVmaster UV layout prep.

Low resolution model is 2180. Level 1.

Resulting UV's generated by UV master. Looks decent enough especially the main area (purple).

Brought it to level 5 and deleted lower divisions.
I've tried generating displacement from every other level lower then level 5. Results always have issues either way.

This is the displacement map generated and the settings used on the left. I never used 32bit cause vray spits out an error with .tiff files. I used a curve for better preview for you guys. I did use the get scale and the number was brought over to Maya.

Geometry was selected and activated displacement control and subdivision. Scale Value was copied and pasted into the displacement amount.

The result always has this weird issues! =( I don't understand why. I've redone UVs countless times. The map is 8K. It is almost working except for those damned weird things happening around letters and corners.

I am SO SO close. Please help. Yes there might be other ways to work around the problem but I want to know why this is happening to avoid future issues. Please please help.
Rendered Result

Sunday, December 2, 2012

Vray Interior & Exteriors

Thing to help me remember.

Rendering for Interiors and Exteriors. Exteriors are way easier to render as there are far fewer bounces.

Primary Bounces need an accurate calculation system whereas secondary requires something less accurate and faster.

Irradiance map is the most efficient speed/ accuracy making it the obvious choice for primary bounce especially for interiors.

Light cache is a good secondary as it is not accurate but faster.

For the GI, we used Irradiance map for the speed and efficiency but when it comes to the animated objects, we switch to brute force since it doesn't flicker and the most accurate in results. This is the same reason why we don't use light cache for primary bounce in the flicker free post posted earlier.

Vray Global Illumination No Flicker

So Siggraph Asia 2012 just went by. Recording everything learnt from the Vray booth. Highly insightful.

For starters, lets go with rendering Global Illumination with animated camera and fixed objects followed by adding animated objects and brute forcing that with everything in the same render instead of separated. Uber handy.

Vray GI - Generating the irradiance map.

When camera animation is complete.
Add all animated objects other then camera into another display layer and hide them. As we need to generate the irradiance map for stationary objects with camera animation.

1. Make sure animation is off
2. Don't need to render final image.
3. Use camera path has to be on and Vray will calculate GI for the entire movement ignoring the fact that animation mode is turned off.

4. After the map is generated. Save the irradiance map. Hit save under mode and change the mode to from file and point it to the .vrmap.
5. A good way to check or roughly preview the map is to use the irradiance map viewer. According to Constantin, even if the camera flies into different rooms, it will still work.
6. The result in the render view should look something like this.

tip* you can double the resolution during this stage to generate a more accurate irradiance map and then size it down before rendering. Also, to increase quality, up the subdiv amount under the basic parameters.

Another interesting question posed was say you don't know which direction the final render will be and you need to generate GI for the entire room. Change your camera type to Spherical and FOV to 360, this will generate a sphere render which saves GI from every direction and loaded the GI map. He then went around with a camera and "add to current map" mode after and would render specific angles like behind tables etc that lacked GI samples. 

7. After your done with this stage. Load up the objects that have animation on it. Select the materials that those objects use (He said, eventually this shouldn't be a shader option alone but object properties as well so during production be sure to assign the animated objects with their own materials even if it is the same. eg. Chrome_animated, Chrome_notanimated) For all objects that have animation, make sure the material has the option turned off.

8. Interesting, now that the irradiance map is done and from file setting is used. It is ignored and whatever we set for 9. is the primary bounce now.

9. The quality setting for 9. is now fed from the subdiv value and so we might change that to 8 or 16 or 32 and the brute force category further down is actually ignored...weird huh?

10. Not sure but I suppose we can turn off camera path at this point in any case. Don't forget to turn "Don't render final image" off again.

*tip time dependent should be ticket on for animation so we avoid that fixed sand texture that doesn't move.
The downside of this method is that the moving objects do not contribute to GI but he usually does a sphere fade AO pass to comp over.