ABSTRACT
In order to provide a highly performant rendering system while maintaining a scene graph structure with a high level of abstraction, we introduce improved rendering caches, that can be updated incrementally without any scene graph traversal. The basis of this novel system is the use of a dependency graph, that can be synthesized from the scene graph and links all sources of changes to the affected parts of rendering caches. By using and extending concepts from incremental computation we minimize the computational overhead for performing the necessary updates due to changes in any inputs. This makes it possible to provide a high-level semantic scene graph, while retaining the opportunity to apply a number of known optimizations to the rendering caches even for dynamic scenes. Our evaluation shows that the resulting rendering system is highly competitive and provides good rendering performance for scenes ranging from completely static geometry all the way to completely dynamic geometry.
- Acar, U. A., Blelloch, G., Ley-Wild, R., Tangwongsan, K., and Turkoglu, D. 2010. Traceable data types for self-adjusting computation. In Proc. of the 2010 ACM SIGPLAN conference on Programming language design and implementation, ACM, New York, NY, USA, PLDI '10, 483--496. Google ScholarDigital Library
- Acar, U. A. 2005. Self-adjusting computation. PhD thesis, Pittsburgh, PA, USA. AAI3166271. Google ScholarDigital Library
- Autodesk, 2013. Dependency Graph (DG) nodes. http://docs.autodesk.com/MAYAUL/2014/ENU/Maya-API-Documentation/index.html. Accessed: 2013-06-01.Google Scholar
- Burckhardt, S., Leijen, D., Sadowski, C., Yi, J., and Ball, T. 2011. Two for the price of one: a model for parallel and incremental computation. In Proc. of the 2011 ACM international conference on Object oriented progr. systems languages and applications, ACM, New York, NY, USA, OOPSLA '11, 427--444. Google ScholarDigital Library
- Burns, D., and Osfield, R. 2004. Open scene graph a: Introduction, b: Examples and applications. In Proc. of the IEEE Virtual Reality 2004, IEEE Computer Society, Washington, DC, USA, VR '04, 265--. Google ScholarDigital Library
- Chen, Y., Dunfield, J., and Acar, U. A. 2012. Type-directed automatic incrementalization. In Proc. of the 33rd ACM SIGPLAN conference on Programming Language Design and Implementation, ACM, New York, NY, USA, PLDI '12, 299--310. Google ScholarDigital Library
- Durbin, J., Gossweiler, R., and Pausch, R. 1995. Amortizing 3d graphics optimization across multiple frames. In Proc. of the 8th annual ACM symposium on User interface and software technology, ACM, New York, NY, USA, UIST '95, 13--19. Google ScholarDigital Library
- Ertl, M. A., and Gregg, D. 2003. The Structure and Performance of Efficient Interpreters. Journal of Instruction-Level Parallelism 5, 2003.Google Scholar
- Hammer, M. A., Acar, U. A., and Chen, Y. 2009. Ceal: a c-based language for self-adjusting computation. In Proc. of the 2009 ACM SIGPLAN conference on Programming language design and implementation, ACM, New York, NY, USA, PLDI '09, 25--37. Google ScholarDigital Library
- Hudson, S. E. 1991. Incremental attribute evaluation: a flexible algorithm for lazy update. ACM Trans. Program. Lang. Syst. 13, 3 (July), 315--341. Google ScholarDigital Library
- Knuth, Donald E. 1968. Semantics of context-free languages. Mathematical systems theory 2, 127--145.Google Scholar
- Knuth, Donald E. 1998. The Art of Computer Programming, Volume 3: Sorting and Searching (2nd Edition). Addison Wesley Longman Publishing Co., Inc., Redwood City, CA, USA. Google ScholarDigital Library
- Laine, S., Saransaari, H., Kontkanen, J., Lehtinen, J., and Aila, T. 2007. Incremental Instant Radiosity for Real-Time Indirect Illumination. In Proceedings of the 18th Eurographics conference on Rendering Techniques, Eurographics Association, Aire-la-Ville, Switzerland, Switzerland, EGSR'07, 277--286. Google ScholarDigital Library
- Microsoft, 2013. WPF Graphics Rendering Overview. http://msdn.microsoft.com/en-us/library/ms748373.aspx {Online; accessed May 31, 2013}.Google Scholar
- NVIDIA Corporation, 2013. SceniX --- NVIDIA Developer Zone. developer.nvidia.com/scenix {Online; accessed February 12, 2013}.Google Scholar
- Proebsting, T. A. 1995. Optimizing an ANSI C interpreter with superoperators. In Proc. of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of progr. languages, ACM, New York, NY, USA, POPL '95, 322--332. Google ScholarDigital Library
- Ragan-Kelley, J., Kilpatrick, C., Smith, B. W., Epps, D., Green, P., Hery, C., and Durand, F. 2007. The Lightspeed Automatic Interactive Lighting Preview System. ACM Trans. Graph. 26, 3 (July). Google ScholarDigital Library
- Ramalingam, G., and Reps, T. 1993. A categorized bibliography on incremental computation. In Proc. of the 20th ACM SIGPLAN-SIGACT symposium on Principles of progr. languages, ACM, New York, NY, USA, POPL '93, 502--510. Google ScholarDigital Library
- Reiners, D., Voss, G., and Behr, J. 2002. Opensg: Basic concepts. In 1. OpenSG Symposium.Google Scholar
- Reps, T., Teitelbaum, T., and Demers, A. 1983. Incremental context-dependent analysis for language-based editors. ACM Trans. Program. Lang. Syst. 5, 3 (July), 449--477. Google ScholarDigital Library
- Rohlf, J., and Helman, J. 1994. Iris performer: A high performance multiprocessing toolkit for real-time 3d graphics. In Proceedings of the 21st annual conference on Computer graphics and interactive techniques, ACM, New York, NY, USA, SIGGRAPH '94, 381--394. Google ScholarDigital Library
- Sitthi-amorn, P., Lawrence, J., Yang, L., Sander, P. V., Nehab, D., and Xi, J. 2008. Automated reprojection-based pixel shader optimization. ACM Trans. Graph. 27, 5 (Dec.), 127:1--127:11. Google ScholarDigital Library
- Sowizral, K., Rushforth, K., and Sowizral, H. 1997. The Java 3D API Specification, 1st ed. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA. Google ScholarDigital Library
- Tobler, R. F. 2011. Separating semantics from rendering: a scene graph based architecture for graphics applications. Visual Computer 27, 6-8 (June), 687--695. Google ScholarDigital Library
- Wernecke, J. 1993. The Inventor Mentor: Programming Object-Oriented 3d Graphics with Open Inventor, Release 2, 1st ed. Addison-Wesley Longman Publ. Co., Inc., Boston, MA, USA. Google ScholarDigital Library
Index Terms
- Lazy incremental computation for efficient scene graph rendering
Recommendations
Image-based rendering of diffuse, specular and glossy surfaces from a single image
SIGGRAPH '01: Proceedings of the 28th annual conference on Computer graphics and interactive techniquesIn this paper, we present a new method to recover an approximation of the bidirectional reflectance distribution function (BRDF) of the surfaces present in a real scene. This is done from a single photograph and a 3D geometric model of the scene. The ...
A practical algorithm for rendering interreflections with all-frequency BRDFs
Algorithms for rendering interreflection (or indirect illumination) effects often make assumptions about the frequency range of the materials' reflectance properties. For example, methods based on Virtual Point Lights (VPLs) perform well for diffuse and ...
Comments