skip to main content
research-article
Best Paper

Permutation Coding for Vertex-Blend Attribute Compression

Published:04 May 2022Publication History
Skip Abstract Section

Abstract

Compression of vertex attributes is crucial to keep bandwidth requirements in real-time rendering low. We present a method that encodes any given number of blend attributes for skinning at a fixed bit rate while keeping the worst-case error small. Our method exploits that the blend weights are sorted. With this knowledge, no information is lost when the weights get shuffled. Our permutation coding thus encodes additional data, e.g. about bone indices, into the order of the weights. We also transform the weights linearly to ensure full coverage of the representable domain. Through a thorough error analysis, we arrive at a nearly optimal quantization scheme. Our method is fast enough to decode blend attributes in a vertex shader and also to encode them at runtime, e.g. in a compute shader. Our open source implementation supports up to 13 weights in up to 64 bits.

Skip Supplemental Material Section

Supplemental Material

References

  1. Niels Henrik Abel. 1826. Beweis der Unmöglichkeit, algebraische Gleichungen von höheren Graden als dem vierten allgemein aufzulösen. Journal für die reine und angewandte Mathematik 1, 1 (1826), 65--84. https://doi.org/10.1515/9783112347386-009Google ScholarGoogle Scholar
  2. Marc Alexa. 2002. Linear Combination of Transformations. ACM Trans. Graph. 21, 3 (2002). https://doi.org/10.1145/566654.566592Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Dean Calver. 2002. Vertex Decompression in a Shader. In Direct3D ShaderX - Vertex and Pixel Shader Tips and Tricks, Wolfgang F. Engel (Ed.). Wordware Publishing, Inc., 172--187.Google ScholarGoogle Scholar
  4. Dean Calver. 2004. Using Vertex Shaders for Geometry Compression. In ShaderX2: Shader Programming Tips and Tricks with DirectX 9.0, Wolfgang F. Engel (Ed.). Wordware Publishing, Inc., 3--12.Google ScholarGoogle Scholar
  5. Nicolas Fréchette. 2017. Simple and Powerful Animation Compression. https://www.gdcvault.com/play/1024009/Simple-and-Powerful-Animation Game Developers Conference.Google ScholarGoogle Scholar
  6. Ivo Zoltan Frey and Ivo Herzeg. 2011. Spherical Skinning with Dual Quaternions and QTangents. In ACM SIGGRAPH 2011 Talks. https://doi.org/10.1145/2037826.2037841Google ScholarGoogle Scholar
  7. Andrew Garrard. 2020. Khronos Data Format Specification v1.3.1. https://www.khronos.org/registry/DataFormat/specs/1.3/dataformat.1.3.html#_compressed_texture_image_formatsGoogle ScholarGoogle Scholar
  8. Jean Geffroy, Axel Gneiting, and Yixin Wang. 2020. Rendering the Hellscape of Doom Eternal. In ACM SIGGRAPH '20: ACM SIGGRAPH 2020 Courses. https://advances.realtimerendering.com/s2020Google ScholarGoogle Scholar
  9. Brian Karis, Rune Stubbe, and Graham Wihlidal. 2021. Nanite --- A Deep Dive. In ACM SIGGRAPH '21: ACM SIGGRAPH 2021 Courses. http://advances.realtimerendering.com/s2021Google ScholarGoogle Scholar
  10. Ladislav Kavan, Steven Collins, Jiří Žára, and Carol O'Sullivan. 2008. Geometric Skinning with Approximate Dual Quaternion Blending. ACM Trans. Graph. 27, 4 (2008). https://doi.org/10.1145/1409625.1409627Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Benjamin Keinert, Matthias Innmann, Michael Sänger, and Marc Stamminger. 2015. Spherical Fibonacci Mapping. ACM Trans. Graph. (Proc. SIGGRAPH Asia) 34, 6 (2015). https://doi.org/10.1145/2816795.2818131Google ScholarGoogle Scholar
  12. Donald E. Knuth. 1998. The Art of Computer Programming, Volume 3 -Sorting and Searching, 2nd Edition. Addison-Wesley Professional.Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Bastian Kuth and Quirin Meyer. 2021. Vertex-Blend Attribute Compression. In High-Performance Graphics - Symposium Papers. The Eurographics Association. https://doi.org/10.2312/hpg.20211282 Best paper.Google ScholarGoogle Scholar
  14. Binh Huy Le and Zhigang Deng. 2013. Two-Layer Sparse Compression of Dense-Weight Blend Skinning. ACM Trans. Graph. (Proc. SIGGRAPH) 32, 4 (2013). https://doi.org/10.1145/2461912.2461949Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Binh Huy Le and Jessica K. Hodgins. 2016. Real-Time Skeletal Skinning with Optimized Centers of Rotation. ACM Trans. Graph. (Proc. SIGGRAPH) 35, 4 (2016). https://doi.org/10.1145/2897824.2925959Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Binh Huy Le and J P Lewis. 2019. Direct Delta Mush Skinning and Variants. ACM Trans. Graph. (Proc. SIGGRAPH) 38, 4 (2019). https://doi.org/10.1145/3306346.3322982Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Binh Huy Le, Keven Villeneuve, and Carlos Gonzalez-Ochoa. 2021. Direct Delta Mush Skinning Compression with Continuous Examples. ACM Trans. Graph. (Proc. SIGGRAPH) 40, 4 (2021). https://doi.org/10.1145/3450626.3459779Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Derrick H. Lehmer. 1960. Teaching combinatorial tricks to a computer. Proceedings of Symposia in Applied Mathematics 10 (1960), 179--193. https://doi.org/10.1090/psapm/010Google ScholarGoogle ScholarCross RefCross Ref
  19. Adrien Maglo, Guillaume Lavoué, Florent Dupont, and Céline Hudelot. 2015. 3D Mesh Compression: Survey, Comparisons, and Emerging Trends. ACM Comput. Surv. 47, 3 (2015). https://doi.org/10.1145/2693443Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Nadia Magnenat-Thalmann, Richard Laperrière, and Daniel Thalmann. 1989. Joint-Dependent Local Deformations for Hand Animation and Object Grasping. In Proceedings on Graphics Interface '88. Canadian Information Processing Society.Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. David K. McAllister, Alexandre Joly, and Peter Tong. 2014. Lossless Frame Buffer Color Compression. United States Patent 8670613.Google ScholarGoogle Scholar
  22. Quirin Meyer, Jochen Süßmuth, Gerd Sußner, Marc Stamminger, and Günther Greiner. 2010. On Floating-Point Normal Vectors. Computer Graphics Forum (Proc. EGSR) 29, 4 (2010). https://doi.org/10.1111/j.1467-8659.2010.01737.xGoogle ScholarGoogle Scholar
  23. Jorn Nystad, Anders Lassen, Andy Pomianowski, Sean Ellis, and Tom Olson. 2012. Adaptive Scalable Texture Compression. In Eurographics/ACM SIGGRAPH Symposium on High Performance Graphics. The Eurographics Association. https://doi.org/10.2312/EGGH/HPG12/105-114Google ScholarGoogle Scholar
  24. Emil Persson. 2012. Creating Vast Game Worlds: Experiences from Avalanche Studios. In ACM SIGGRAPH 2012 Talks. Article 32. https://doi.org/10.1145/2343045.2343089Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Budirijanto Purnomo, Jonathan Bilodeau, Jonathan D. Cohen, and Subodh Kumar. 2005. Hardware-Compatible Vertex Compression Using Quantization and Simplification. In Graphics Hardware. The Eurographics Association. https://doi.org/10.2312/EGGH/EGGH05/053-062Google ScholarGoogle Scholar
  26. Sylvain Rousseau and Tamy Boubekeur. 2020. Unorganized Unit Vectors Sets Quantization. Journal of Computer Graphics Techniques (JCGT) 9, 4 (2020). https://jcgt.org/published/0009/04/02/Google ScholarGoogle Scholar
  27. Henry S. Jr. Warren. 2012. Hacker's Delight, 2nd Edition. Addison-Wesley Professional.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Permutation Coding for Vertex-Blend Attribute Compression

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image Proceedings of the ACM on Computer Graphics and Interactive Techniques
          Proceedings of the ACM on Computer Graphics and Interactive Techniques  Volume 5, Issue 1
          May 2022
          252 pages
          EISSN:2577-6193
          DOI:10.1145/3535313
          Issue’s Table of Contents

          Copyright © 2022 ACM

          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 the author(s) 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: 4 May 2022
          Published in pacmcgit Volume 5, Issue 1

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Research
          • Refereed
        • Article Metrics

          • Downloads (Last 12 months)30
          • Downloads (Last 6 weeks)1

          Other Metrics

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader