Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

A system for rapid, automatic shader level-of-detail

Published: 02 November 2015 Publication History

Abstract

Level-of-detail (LOD) rendering is a key optimization used by modern video game engines to achieve high-quality rendering with fast performance. These LOD systems require simplified shaders, but generating simplified shaders remains largely a manual optimization task for game developers. Prior efforts to automate this process have taken hours to generate simplified shader candidates, making them impractical for use in modern shader authoring workflows for complex scenes. We present an end-to-end system for automatically generating a LOD policy for an input shader. The system operates on shaders used in both forward and deferred rendering pipelines, requires no additional semantic information beyond input shader source code, and in only seconds to minutes generates LOD policies (consisting of simplified shader, the desired LOD distance set, and transition generation) with performance and quality characteristics comparable to custom hand-authored solutions. Our design contributes new shader simplification transforms such as approximate common subexpression elimination and movement of GPU logic to parameter bind-time processing on the CPU, and it uses a greedy search algorithm that employs extensive caching and upfront collection of input shader statistics to rapidly identify simplified shaders with desirable performance-quality trade-offs.

Supplementary Material

ZIP File (a187-he.zip)
Supplemental files.

References

[1]
Andersson, J., and Tatarchuk, N. 2007. Frostbite rendering architecture and real-time procedural shading and texturing techniques. In Game Developers Conference 2007 (GDC). Available at http://www.frostbite.com/2007/04/frostbite-rendering-architecture-and-real-time-procedural-shading-texturing-techniques.
[2]
Ansel, J., Kamil, S., Veeramachaneni, K., Ragan-Kelley, J., Bosboom, J., O'Reilly, U.-M., and Amarasinghe, S. 2014. OpenTuner: an extensible framework for program autotuning. In International Conference on Parallel Architectures and Compilation Techniques, ACM, 303--316.
[3]
Bungie, 2014. Destiny computer game. http://www.destinythegame.com.
[4]
Chib, S., and Greenberg, E. 1995. Understanding the metropolis-hastings algorithm. The American Statistician 49, 4, 327--335.
[5]
Epic Games, 2015. Unreal Engine 4 documentation. Available at http://docs.unrealengine.com.
[6]
Epic Games, 2015. Unreal Engine 4 Marketplace Web Site. http://www.unrealengine.com/marketplace.
[7]
Fatahalian, K. 2015. Tackling the level-of-detail problem through new shading languages and tools. In ACM SIGGRAPH 2015 Courses: Open Problems in Real-Time Rendering. Available at http://openproblems.realtimerendering.com.
[8]
Foley, T., and Hanrahan, P. 2011. Spark: modular, composable shaders for graphics hardware. ACM Trans. Graph. 30, 4 (July), 107:1--107:12.
[9]
Guenter, B., Knoblock, T. B., and Ruf, E. 1995. Specializing shaders. In Proceedings of SIGGRAPH 95, Annual Conference Series, ACM, 343--350.
[10]
Hanrahan, P., and Lawson, J. 1990. A language for shading and lighting calculations. Computer Graphics 24, 4 (Sep), 289--298.
[11]
He, Y., Gu, Y., and Fatahalian, K. 2014. Extending the graphics pipeline with adaptive, multi-rate shading. ACM Trans. Graph. 33, 4 (July), 142:1--142:12.
[12]
Oat, C., Tatarchuk, N., and Isidoro, J. 2003. Layered car paint shader. In Shader X2 -Shader Tips & Tricks, W. F. Engel, Ed. Wordware Publishing.
[13]
Olano, M., Kuehne, B., and Simmons, M. 2003. Automatic shader level of detail. In Proceedings of Graphics Hardware, ACM/Eurographics, 7--14.
[14]
Pellacini, F. 2005. User-configurable automatic shader simplification. ACM Trans. Graph. 24, 3 (July), 445--452.
[15]
Proudfoot, K., Mark, W. R., Tzvetkov, S., and Hanrahan, P. 2001. A real-time procedural shading system for programmable graphics hardware. In Proceedings of SIGGRAPH 01, Annual Conference Series, ACM, 159--170.
[16]
Sampson, A., Baixo, A., Ransford, B., Moreau, T., Yip, J., Ceze, L., and Oskin, M. 2015. ACCEPT: a programmer-guided compiler framework for practical approximate computing. In University of Washington Technical Report UW-CSE-15-01-01. Available at ftp://ftp.cs.washington.edu/tr/2015/01/UW-CSE-15-01-01.pdf.
[17]
Sitthi-Amorn, P., Modly, N., Weimer, W., and Lawrence, J. 2011. Genetic programming for shader simplification. ACM Trans. Graph. 30, 6 (Dec.), 152:1--152:12.
[18]
Vaidyanathan, K., Salvi, M., Toth, R., Foley, T., Akenine-Möller, T., Nilsson, J., Munkberg, J., Hasselgren, J., Sugihara, M., Clarberg, P., Janczak, T., and Lefohn, A. E. 2014. Coarse pixel shading. In Proceedings of the Conference on High Performance Graphics, ACM/Eurographics, 9--18.
[19]
Walter, B., Marschner, S. R., Li, H., and Torrance, K. E. 2007. Microfacet models for refraction through rough surfaces. In Proceedings of the Eurographics Conference on Rendering Techniques, Eurographics Association, 195--206.
[20]
Wang, R., Yang, X., Yuan, Y., Chen, W., Bala, K., and Bao, H. 2014. Automatic shader simplification using surface signal approximation. ACM Trans. Graph. 33, 6 (Nov.), 226:1--226:11.

Cited By

View all
  • (2024)ShaderPerFormer: Platform-independent Context-aware Shader Performance PredictorProceedings of the ACM on Computer Graphics and Interactive Techniques10.1145/36512957:1(1-17)Online publication date: 13-May-2024
  • (2023)Automatic Mesh and Shader Level of DetailIEEE Transactions on Visualization and Computer Graphics10.1109/TVCG.2022.318877529:10(4284-4295)Online publication date: 1-Oct-2023
  • (2022)ShaderTransformer: Predicting Shader Quality via One-shot Embedding for Fast SimplificationACM SIGGRAPH 2022 Conference Proceedings10.1145/3528233.3530722(1-9)Online publication date: 27-Jul-2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Transactions on Graphics
ACM Transactions on Graphics  Volume 34, Issue 6
November 2015
944 pages
ISSN:0730-0301
EISSN:1557-7368
DOI:10.1145/2816795
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 02 November 2015
Published in TOG Volume 34, Issue 6

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. level-of-detail
  2. real-time rendering
  3. shader optimization
  4. shader simplification

Qualifiers

  • Research-article

Funding Sources

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)35
  • Downloads (Last 6 weeks)5
Reflects downloads up to 26 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)ShaderPerFormer: Platform-independent Context-aware Shader Performance PredictorProceedings of the ACM on Computer Graphics and Interactive Techniques10.1145/36512957:1(1-17)Online publication date: 13-May-2024
  • (2023)Automatic Mesh and Shader Level of DetailIEEE Transactions on Visualization and Computer Graphics10.1109/TVCG.2022.318877529:10(4284-4295)Online publication date: 1-Oct-2023
  • (2022)ShaderTransformer: Predicting Shader Quality via One-shot Embedding for Fast SimplificationACM SIGGRAPH 2022 Conference Proceedings10.1145/3528233.3530722(1-9)Online publication date: 27-Jul-2022
  • (2022)Searching for Fast Demosaicking AlgorithmsACM Transactions on Graphics10.1145/350846141:5(1-18)Online publication date: 13-May-2022
  • (2022)Learning from Shader Program TracesComputer Graphics Forum10.1111/cgf.1445741:2(41-56)Online publication date: 24-May-2022
  • (2020)Point Cloud Data Driven Level of detail Generation in Low Level GPU DevicesJournal of the Korea Institute of Military Science and Technology10.9766/KIMST.2020.23.6.54223:6(542-553)Online publication date: 5-Dec-2020
  • (2019)Specialization Opportunities in Graphical WorkloadsProceedings of the International Conference on Parallel Architectures and Compilation Techniques10.1109/PACT.2019.00029(271-282)Online publication date: 23-Sep-2019
  • (2018)Approximate Program Smoothing Using Mean‐Variance Statistics, with Application to Procedural Shader BandlimitingComputer Graphics Forum10.1111/cgf.1337437:2(443-454)Online publication date: 22-May-2018
  • (2018)A Cross-platform Evaluation of Graphics Shader Compiler Optimization2018 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS)10.1109/ISPASS.2018.00035(219-228)Online publication date: Apr-2018
  • (2016)Representing and scheduling procedural generation using operator graphsACM Transactions on Graphics10.1145/2980179.298022735:6(1-12)Online publication date: 5-Dec-2016
  • Show More Cited By

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media