Umbra 3.2

Hi, saw this video of umbra latest release http://www.youtube.com/watch?v=b9Oq05dcst8 (by latest I mean a few months old), and it has a quote from joachim ante (unity CTO), and this quote is running while they are showing one of the new features of their version 3.2 of umbra which is the shadow caster culling.
Does that mean unity is currently in the works of integrating such feature into their version of umbra, or was the quote taken somewhat out of context?
Also if so will you be implementing any of the other features, more precisely all the ones related to shadow caster culling.

For those that don’t know what I’m talking about you should check the video posted above and this http://www.umbrasoftware.com/2013/01/ and if you want to have an idea on how umbra possibly implemented it you can take a look at this paper Shadow Caster Culling for Efficient Shadow Mapping | TU Wien – Research Unit of Computer Graphics
In short current unity version of umbra doesn’t render the geometry of the object that is not being seen, yet it still renders the shadow that the object being occluded casts, even if the shadow isn’t visible by the camera (in short it occludes the geometry, doesn’t occlude the shadow), so if you have say 50 objects behind a wall all casting shadows while you won’t be rendering their geometry you will still be paying the cost of drawing the shadow (assuming they are casting a shadow to say a plane that is visible from your camera position). However the new umbra system will in not only not render the geometry but it also won’t render the shadow since that same shadow isn’t visible by the camera. So in theory this should result in considerable performance boosts for most scenes without any extra work from the developers part.

Unity does not implement the full umbra, only a static PVS version basing on it so it might or might not be easy to integrate it as shadow occlusion often is bound to the occlusion queries on the gpu (torque 3d and the high profile fps engines too I think.), as you can not occlude it basing on its owners occlusion only / primarily or you will have major bugs. You need to occlude it basing on his own shadow volume.

Unity 4.2 contains various enhancements regarding shadow caster handling and I’m not fully sure which ones in detail until I got a chance to test it well enough, so it might be possible that they added such a thing or something along that line (4.2 adds stencil buffers for example which can be used for such a purposes and who knows why it was finally added 7 years after it was the primary means of rendering optimizations :)).

While I did knew that unity had it’s own version of umbra (someone from unity said as much in this forum), I assumed it was a version that was pretty close to the umbra one, since umbra for quite sometime used unity on their website to showcase their tech.

Have they publicly announced the features on unity 4.2? If so can you share the link, since unfortunately I didn’t see them in the unity blog.

Thank you.

Umbra 3.2 is not shipping in Unity yet. But we are working on it.

Unity has quite a lot more of Umbra than just static PVS (you can use dynamic portals etc.). But see above; Umbra 3.2 is not in Unity yet.

Unity 4.2 will have shadow caster/collector batching. Which is not related to Umbra.

Thanks for the answer, while I have no immediate interest in it (don’t really work based on future features), if it works as described (by umbra, and the other paper) it should give a nice performance boost in quite a few scenes for a lot of people. Speaking of which can’t wait to try the shadow caster/collector batching.

Once again thanks for the answer.

I know that batching is not related to Umbra.
But I was not sure if its the only thing that got enhanced regarding shadows as I did not have time to test that aspect yet and no customer project where it would even matter.

Thank you for the clarification and the information that Umbra 3.2 is in the works :slight_smile: