Umbra 3 & Unity 3.5 - IGDA Helsinki 2012
-
Upload
sampo-lappalainen -
Category
Technology
-
view
581 -
download
0
description
Transcript of Umbra 3 & Unity 3.5 - IGDA Helsinki 2012
Umbra, Unity and rendering optimization
10/1/2012
Sampo ”Anvil” Lappalainen & Thomas Puha
IGDA Unity evening
• Founded in 2006, Helsinki, Finland• 13 full-time employees • In the business of occlusion culling = rendering
performance optimizing• Plenty of shipped games utilizing Umbra’s tech: Alan
Wake, Mass Effect 2-3, Dragon Age 1-2, Age of Conan etcCurrent product
• Umbra 3.1 (CPU, CPU/GPU)
• Available for PlayStation 3, Xbox 360, PlayStation Vita, iOS, pc, Android and future console platforms...
Currently working with...
Currently working with...
What do we offer?“Umbra rendering optimization”• Helping to optimize graphics rendering to enable better
performance
• Only draw what the camera sees - visibility solution
• Basis of a 3D engine – but very difficult problem to solve well
• Umbra’s core engineering team has worked on this since 2000
• More and more technology-driven studios choose our solution
• Mature technology and it works – easy to integrate
Umbra tech timeline
• Umbra 1 - 2007– Hierarchical representation of the scene– GPU occlusion queries for visibility testing
• Umbra 2 (OB) - 2009– Multithreaded Umbra 1– Built to work optimally on PS3 / Xbox 360
• Umbra 3 - 2011– Umbra Optimizer for visibility baking– Umbra Runtime for CPU operations
Umbra and Unity 3.5 Pro
• Umbra 3.0 pre-integrated• All Unity platforms covered
• Optimizer:– Visibility ”bake”– Take scene, computation parameters as input– Produces a Tome
• Runtime:– Perform occlusion culling using the pre-computed Tome
– Incremental Bake•When a change is made to the scene, only the affected areas need to be recomputed•Dramatic reduction in baking times
Upcoming features
– ”Grizzly” culling algorithm• Improved portal culling algorithm• All new, groundbreaking, next-level, way
of doing things!
Live Umbra 3 and Unity demo
Recap: Best practices
Tip 1: Set tight Occlusion Areas
• Don’t compute the parts of the scene where camera cannot go• Gains:
– Faster computation– Smaller runtime memory footprint
Tip 2: Choose the right culling algorithm
• Different data needs to be computed for different algorithms
• PVS– Simple lookup in runtime, fast!
• PVS with dynamic objects– Larger runtime data size
• Portal– More accurate than the PVS test– Fast to test dynamic objects
Tip 3: Computation parameters
• Huge impact on both computation time and culling quality
• View Cell Size:– Smaller values take longer to
compute, but produce better occlusion
• Near Clip Plane:– How close to the geometry can
the runtime camera go• Start with default values and tweak
one parameter at a time
Thank you for listening (Thanks IGDA and Unity)
Enjoy a free ”Tome” drink on us tonight!
umbra3.com