Iray has some problems of Caustics Rendering with Volume Rendering
Overcomeon
Posts: 10
Iray has some problems of Caustics Rendering with Volume Rendering.
In detail, Please see attached image in the area of A, B, C and D.
Iray can't be rendered at the same time the Caustics and Volume.
A: Not Appeared Caustics. A is within Volume Material. (ThinWalled=OFF)
B: Appeared Caustics.
C: Appeared Caustics.
D: Not Appeared Caustics. D is behind on Volume Material. (ThinWalled=OFF)
Perhaps, Ray Marching within Volume of Iray may be due to perform only on a straight line connecting the pixel and the light source.
An area of "y" had no bending ray by refraction from the light source "x".
IrayScene194z.jpg
800 x 450 - 58K
Comments
I haven't given this much thought before, but I'm guessing this might be a design limitation. Caustics are produced by calculating ray reflection and transmission; volume is the inverse, absorption and scattering.
This guy has written up a post showing Iray and Mental Ray caustics, and how the Iray version is lacking. His scene includes a water mass that is intended to be both volumetric and caustic. Maybe it'll shed some light on the situation. It's possible a different (simpler) volumetric shader could improve things. You might try experimenting with the red wax shader in the nVidia Examples folder, rather than mess with the generalistic Iray Uber stuff.
http://www.rendergarden.org/en/blog/item/73-iray-caustics-issues
Hi Tobor, Thank you for useful information in Mental Ray and Iray.
In this scene, built the surface of the water in the Displacement and Bump mapping.
I 'll try any other Geometry and Shader.
I retried with a simple geometry and shader, but was the same result.
I also think that it is the design limitations of the current Iray.
Geometry: cocktail cherry (from Everyday Drinks)
Shader: Red Wax (Iray Uber Shader based), Green Wax
i think it is not caustic whats missed in Iray. Reflections of caustic on surface and ground look correct to me...But Iray cant show light beams inside of a volume with absorption/sss. This is a general limitation in Iray but i think i remember that i read somewhere that this will be a added/planned feature in one of the next Iray versions.
a simple setup is a cube with full refraction (and zero glossiness, zero absorption /255/255/255), minimal sss coeficient.. sss direction forward 1 (no sidewards scattering).... then a strong narrow spotlight close to the front side of the cube.
and there is no beam to see in a render...bad missing feature in iray... the only what we can see is sss projection on the surface but never the light(particle) glow inside of a volume (for this change sss direction to zero and if the light beam is close enough to the surface, sss projection on the surface is to see).. that's the reason why water looks dull.
I am not sure you guys talking about the same thing , but from the article from Tobor's post Iray render exactly as Mental Ray
here is water shader from my upcoming release , the tank is 3 x 3 m so the water looks more dense due to its proportions , in a glass it would looks much clear .
Lit by HDRI and there are caustics where they should be , if the water is less deep you can see pretty acoustic bellow the surface but you need render not in empty scene , volumetric and refraction need backdrop and can't be done with empty scenes as in any program , use HDRI environment or build a wall around
@MEC4D.. yes. caustic is right i noted that too... so a spotlight from the side in a watercube does work only with a backdrop? Need to do some testrenders over the weekend..
So how would i do a large, clear icecube with a spotlight from the side and the rest is dark? Glass walls like for a tank above wont work in this case.. or would i have to model the icecube with walls ?
When you use volumetric you always need to have something behind or a plane or HDR or sky sun other way there is nothing to calculate for iray
the spot working even sun light as you saw in above renders
here made for you example I have behind HDR just just not visible so you can see the light beam , used water on cube .. sadly Abbe working better with HDRI ( full spectrum ) than any light in DS on not distorted water but add some normal and it working however not as good
Hi MEC4D, Thank you for your experimenting.
Please see attached images.
The HDR rendering results in A, B and C not appear Caustics.
In other words, the rendering results in Caustics=ON and Caustics=OFF are the same.
A: Glass (ThinWalled=OFF)
B: Glass (ThinWalled=ON)
C: Mirror
Perhaps, Caustics might appear only in the first ray, might not appear in the second ray such as reflection, refraction and transmission (Volume also including).
You see in Iray things working a little different , you need to have physical materials for the best results
It is like with a CD when you put on a angle and see light bending where the colorful caustic hit your eye, but if you hold a mirror on the side you will not see the same thing as only you can see it at the angle and nobody else , beside using just reflection set to 1 is not what should be , there is no material in real world that have that perfect surface , you need some micro surface on the mirror so it will catch up the reflection and send the photons back to the camera , photons are tiny little particles of light that iray shut while rendering , if the surface do not have enough micro roughness the reflection will not catch as much photons you wish to see with the caustic reflections
The same go for light reflection of fresnel , only you can see fresnel on camera angle and other person standing on the side will not , that is the world of physical materials , the same goes for Arthroscopic reflection that will not working if the glossy of the metal is set on 1 , as there is nothing to bend from the surface , the same for water and all other stuff , it is all about micro surface and energy you use to create caustics , if one thing don't works the rest don;t follow , some other program have the option to set the level of caustic and adjust it to our needs but in Iray everything need to be set perfect to recreate the real world situation .
I made quick example for you and remember that what you see in front of your camera is not always the same on the other angle , we got used to all the alternative effects in the past rendering engines that faked it for us easy way , but that is not the case with unbiased rendering , to recreate exact situation, you need exact light power, and physical materials on all surfaces what is the most important aspect
It is not as easy as we would like it to have .. life is complex but it is not impossible
I used Abbe on the first glass for better tracking the caustics , however Abbe usually will change to the angle of view and will be not the same in reflections on other objects surfaces as I mentioned before
Updated , added 2 more renders
@MEC4D thank you... i understand now why my sss light tests never worked..... and the infos i could find about caustic/light absorption not working correct in Iray must be from the time before they added those features to Iray...
Another question: You mentioned that is absolutly needed to use real physical values but i cant find those datas in the net.. there are many tables with IOR for all kind of materials but coefficients for absoprtion and sss are always missing.... can you point me on some resources ?
Look always on the articles time on the net if the date is before Iray was introduced to DS it mean old iray version , DS got the first newest version of iray before any other programs did so a lot of old info for old iray around .
I have my info memorized in my head already after so long in it and longer before Iray my old bookmarks are gone since I have total new rig since December , plus you need to choice if you working with Metallicity base mixer or Specular-Glossiness as settings for both are different so if you put values that was made for Specular shaders it will not working the same way with the other .
All the links to basic resources was already posted into the Iray tread in the past and I don't even come across new stuff lately as I was not searching but there is not much of it anyway other than scientist studies
I did once came across coefficients values for metals but it was nothing we can use in iray or other programs as simple there is nothing that will calculate it in Uber iray unless you write your own MDL block
SSS values are so different for each scales and programs it is guessing , so my orange juice may look good in DS but in other program the values will be too dense due to the scale of the object , for that reason internet info for this kind of stuff are not much usable for us however how much particles you want in your water is up to you .. it will not make difference for PBR however the reflection of water will .
And with real physical values I mean mostly focus on the Fersnel and refraction and if possible physical models used for test so double walled glass and water for refraction and not empty scenes , I did not had good results with the spot lights in DS as the light is not full spectrum so the result will be different so I prefer my own HDRI lights or Sky-Sun or emitters
I think people are missing what the blog article was pointing out: the relative lack of caustics *within* the volume, which I thought was the OP was talking about. The examples I've seen posted since show the effects of transmitted light outside of the volume. That's trivial in any case.
I considered the OP's question related to the image the blog writer talks about under "Nope. Here's Mental Ray version" (fifth image down). The M-R version is physically correct; the Iray version is muddied and indistinct. Yes, there are some caustic patterns visible in the Iray version, but the examples are no where alike. Since water pools where the walls and bottom are opaque are common in renders, a scene like the one in the blog should serve as the use-case.
It's also possible that the version of Iray in 4.9 has improved volumetrics related to this, so any tests should be A-B between the two.
@Overcomeon, what happens when you use a volume where the geometry itself is morphed, rather than relying on maps? IOW, if you're looking for water effects, what happens when the geometry of the water surface is rippled, rather than just using displacements?
This is a good point; the blog says it's for 2.x; D|S 4.8 got 4.0. OTOH, one of the problems Iray still has is in volumetrics. The VDF functions are still fairly primitive, though maybe there are some improvements in the version in 4.9.
Still, I'd be interested to see the results of your refined shaders using a scene type like that in the blog. The tanks are interesting, but most 3D waterscapes show only the top of the water. Your third tank example shows patterned caustics, but it's an unfinished render, and I'd be interested if it's possible in the current Iray to achieve what the blog writer demonstrates for Mental Ray. Even if it's 50% closer that's an improvement. M-R is a more elaborate renderer than Iray, with a multitude of adjustments. There are reasons Iray is preferred for one-button renders, but better water effects would be nice to have.
I will try to make some scene like in the blog ..
you can see caustic withing the volume in iray , the last versions improved with many things 2 times already compared to the first 4.0
in main time you can see one of my render from the other day with caustic inside and outside the tank .. the water was also volumetric with slight amount of SSS , no post work
Hi @Tobor, That water surface was used procedural displacements and bump mapping. (by Flow Noise of MDL Brick)
Please see below gallery image and attached scene file: http://www.daz3d.com/gallery/images/112856 (This scene was not used Caustics)
The aquarium looks very good for a tank scene. Nice job.
For a pool/ocean/lake scene, the third (actual photographic) image down on the right is what we're after:
https://en.wikipedia.org/wiki/Caustic_(optics)
On the versioning: nVidia doesn't usually make wholesale changes to existing MDL implementations, unless it is a functional requirement. Otherwise, existing scenes could be altered down the road when re-rendering, and in the pro world, users decidedly dislike that. Many of the changes between 2.x and 3.x, for example, were to take advantage of upgrades to the CUDA engines in later drivers. This is more changes to the processing architecture than the way renders look. However, we know they made a bug fix in the latest version affected subsurface scattering, and as volumes are part of the equation here, other aspects of volumes might have changed.
If there's anyone who can make this work, it's you Cath, so we're counting on seeing wonderful things!
As an aside, I tried to find some more technical details from nVidia, and about all I could come up with was the following discussion of *procedurally* creating caustics in water (which I do now in Photoshop):
http://http.developer.nvidia.com/GPUGems/gpugems_ch02.html
Finally, for all and lurkers: there are known limitations to the caustic sampler in Iray, the most critical ones are noted by nVidia:
The Iray Photoreal caustic sampler was mainly designed for typical turntable scenes (but is not limited to them). It thus performs best under the following conditions:
The scene geometry is (mostly) in view.
The caustics are (mostly) in view.
The scene is positioned on top of a groundplane or large surface.
Note:
To catch caustics on the groundplane, the groundplane <samp>environment_dome_ground_reflectivity</samp> must be set. See <a href="http://www.migenius.com/doc/realityserver/latest/resources/general/iray/manual/concept/concept/environment_dome_and_implicit_groundplane.html#1">Environment dome and implicit groundplane</a> for a description of the groundplane and its settings.
The caustic sampler will not improve caustics in all use cases, and thus can actually harm overall rendering performance. The caustic sampler can fail to improve caustics under the following conditions:
Only a small part of a larger scene is in view (e.g., the camera zooms in on a single item in a detailed scene).
The camera zooms in on a small part of a much larger caustic
Tobor , I see clear caustic but they are not as bright inside the water as I wish , and not talking about the big shadow light distortions as that is not what I am looking for, it may be the wrong displacement for this still testing
There was some work done on caustics in some updates as well as it was not working correctly from what I remember but Uber Iray is not released by Nvidia ..I may try a Nvidia MDL block as well to be sure if Uber iray is set correctly and if I get the same results or not.
when you look closer in the second render pool 3 you will see small spots of brighter caustics between the light and shadows bouncing around , I noticed that they are caught by the highest displacement point only so going to try another one , also will try modeled water , the light need to bend and just normal or displacement not really help as I don't know the direction of bending if it goes up , on the side or whatever , the caustic are definitely correct when the pool is not here at all but within the volume they are not bright enough but there
well.. all what i could find is the post on the Nvidia blog where they introduce the new caustic sampler which is dated Mai 2013.. so older posts/examples and render images are outdated. The examples compearing Mental Ray with Iray are from 2011 (long before Iray introduced the new caustic sampler)...
http://blog.irayrender.com/post/51722647664/the-architectural-and-caustic-samplers
The caustics working fine , the only thing it is not so bright is inside water , also noticed that more intensive caustic showing up when the refraction is higher then the displacement start to kick in , I need to find another solution via MDL ..
for now I fake it until I make it lol I hate alternatives but what you can do, so after hours of not bigger success for brighter caustic I came with another idea ..
the water is volumetric but not SSS amount still it show like it was , the displacement was replaced with small amount of bump maps and actually created the effect without using caustics for rendering but on 1.79 IOR as anything bellow not working , make me thinking is the DS scale wrong for Iray or something ? it should kick in already on 1.33 but nothing happening before 1.79 IOR what is more IOR for a Saphire or Ruby but still the pool water is not as dense for a Ruby also I used absorption color for the effect of the density so how deeper it get how greener it will be in place of refraction color but not used SSS amount ( actually Szark mentioned this to me today as idea in connection with color particles in water but not tried with SSS amount yet ) the reason I used the absorption color to keep the caustics as light as possible and of course 100 and 1 another settings , so now you tell me why we see caustics created by bended "water" surface without caustics check ON and it render damn fast.. I am lost for this moment ... or maybe a Blind Chicken found a corn .. and btw what you see the "caustics " are not shadows light stuff as in the preview tests other way the lines would be dark in color the pool and steps are bluish water is white , absorption density color green , it looks like the bump maps collect the sun energy in one place , but that is a job for caustics as there is nothing else on the surface than just bump maps
Please see the attached image file and scene files.
Caustics Rendering is also on the inside of Volume Rendering seems to have worked.
However, Caustics rays are darker than incorrect rays (not bent rays), perhaps hidden.
I tested it some time ago with just SSS volume and it working but I give up on caustic inside refraction with volume for now , they just not showing up enough, and all you will get is bent of the light rays inside water or glass and I tried all possible materials settings, one of my friends said that with Path light it will be rather not success so waste of my time trying to get true bright caustics inside water .
This is good info everyone, thanks for contributing to a better understanding on what we need to do when wanting realistic caustics.
Cath, a valiant attempt anyway! Thanks for trying. Your "faked" version looks pretty convincing.
As I do only stills, post processing in Photoshop is a workable alternative, and for my workflow, faster. I render a quick ID mateials mask using a canvas, or if the water scene is just the pool or ocean waves, I'll use a matte object and comp it in completely. Since even an older version of Mental Ray is shown to provide good results, it's probably just a matter of time until nVidia makes similar improvements to Iray. They own both renderers, after all.
i just play around with the mental ray scene...
What's now possible and improved in iray are the shadows.. the shadow on the ground of the pool together with the one on the water surface is now possible.
For shadows on the surface of a refractive material refraction weight must not be 1... (the DAZ water shader as example does not cast shadows on the surface)..
To get light to the ground - glossiness cant be 1 (also here the DAZ water shader blocks the light because of this - no shadows means also no caustic)...
Balancing those two paramters is very sensible and based on the scale... As to me - while the mental ray example looks nice... it is overdone.. a green dispersion water - 2meters deep would not paint caustic on the ground anymore. .. Mec4d examples looking very good to me.
Here a test using refraction weight 0.96 - glossiness 0.9 - refraction glossiness 0.9 - but no abbe or absorption color to get as much light as possible down to the ground... had no patience to let it clear up on my slow card but caustic is clearly there and bright...(caustic AND architectural sampler on)
The effect we are looking for happens only in cristal clear water.. as soon as there is green dispersion the effect is way lower or not to see - ( iam fishing in a green lake near where i am living - rarly i see caustic despite that the water view is maybe 2 meter... i just think that maybe Iray is right and with dispersion the effect IS very low.. without it renders nice.