Skip to main content

Fast Triangle Strip Generation and Tunneling for Different Cost Metrics

  • Conference paper
  • First Online:
Computer Vision and Graphics (ICCVG 2022)

Abstract

Triangle strips provide a memory-efficient representation of triangle meshes. In the ideal case, they allow to encode a mesh of n faces with \(n + 2\) vertices. All modern graphics interfaces offer a primitive type for triangle strips to disburden the host/device bottleneck and save graphics memory. Although modern 3D rendering pipelines mainly utilize triangle lists, strips still offer significant benefits in two-dimensional applications, e.g. the visualization of polygons in orthographic maps. Encoding a regular mesh into an optimal triangle strip representation is an NP-complete problem. Therefore, multiple heuristic techniques for different cost metrics have been proposed and implemented. In this paper, we provide an overview of related approaches and propose a unified cost model to rate their quality. Furthermore, we introduce a faster and more flexible implementation for triangle strip generation. It extends an established key technique, the tunneling operator, with a new algorithm for circle detection. A concluding benchmark compares our code with existing solutions and outlines its superior performance in most use cases.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 149.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 199.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Akeley, K., Haeberli, P., Burns, D.: The tomesh.c program. Available on SGI computers and developers toolbox CD 40 (1990)

    Google Scholar 

  2. Akenine-M\(\ddot{\rm o}\)ller, T., Haines, E., Hoffman, N.: Real-Time Rendering. AK Peters/CRC Press, 3 edn. (2008), p. 552

    Google Scholar 

  3. Arkin, E.M., Held, M., Mitchell, J.S., Skiena, S.S.: Hamiltonian triangulations for fast rendering. Vis. Comput. 12(9), 429–444 (1996)

    Article  Google Scholar 

  4. Beeson, C., Demer, J.: NvTriStrip Library (2000), https://www.nvidia.com/object/nvtristrip_library.html

  5. Eckel, G., Jones, K.: OpenGL Performer Programmer’s Guide. Silicon Graphics, Inc (2000)

    Google Scholar 

  6. Evans, F., Skiena, S., Varshney, A.: Optimizing triangle strips for fast rendering. In: Proceedings of Seventh Annual IEEE Visualization’96. pp. 319–326. IEEE (1996)

    Google Scholar 

  7. Evans, F., Skiena, S., Varshney, A., Azanli, E.: Stripe v2.0: A Software Tool for Efficient Triangle Strips (1998), https://www3.cs.stonybrook.edu/~stripe/

  8. Garey, M.R., Johnson, D.S., Tarjan, R.E.: The Planar Hamiltonian Circuit Problem is NP-Complete. SIAM J. Comput. 5(4), 704–714 (1976)

    Article  MathSciNet  MATH  Google Scholar 

  9. Kerbl, B., Kenzel, M., Ivanchenko, E., Schmalstieg, D., Steinberger, M.: Revisiting the vertex cache: Understanding and optimizing vertex processing on the modern gpu. Proc. ACM Comput. Graph. Interact. Tech. 1(2) (aug 2018), https://doi.org/10.1145/3233302

  10. Levoy, M., Gerth, J., Curless, B., Pull, K.: The Stanford 3D Scanning Repository (2005), https://graphics.stanford.edu/data/3Dscanrep/

  11. Porcu, M.B., Scateni, R.: An Iterative Stripification Algorithm Based on Dual Graph Operations. In: Proceedings of Eurographics. pp. 69–75 (2003)

    Google Scholar 

  12. Porcu, M.B., Scateni, R.: Partitioning Meshes into Strips using the Enhanced Tunnelling Algorithm (ETA). In: VRIPHYS. pp. 61–70 (2006)

    Google Scholar 

  13. Reuter, P., Behr, J., Alexa, M.: An Improved Adjacency Data Structure for Fast Triangle Stripping. Journal of Graphics Tools 10(2), 41–50 (2005)

    Article  Google Scholar 

  14. Stewart, A.J.: Tunneling for Triangle Strips in Continuous Level-of-Detail Meshes. In: Graphics Interface. pp. 91–100 (2001)

    Google Scholar 

  15. Terdiman, P.: Creating efficient triangle strips (2000), http://www.codercorner.com/Strips.htm

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jonas Treumer .

Editor information

Editors and Affiliations

8 Appendix

8 Appendix

See Tables 16, Figs. 14 and 15.

Table 1 suzanne (966 triangles, 1250 runs)
Table 2 triceratops (5660 triangles, 250 runs)
Table 3 horse (96,966 triangles, 100 runs)
Table 4 armadillo (345,944 triangles, 5 runs)
Table 5 happy_buddha (1,087,716 triangles, 1 run)
Table 6 Reducing the number of strips with the tunneling stage of rm_tristripper (pairs as preprocessing algorithm)
Fig. 14
figure 14

The triceratops model before tunneling. The pairs preprocessing algorithm has created 2812 strips consisting of two triangles and 36 isolated strips that contain a single triangle

Fig. 15
figure 15

The triceratops model after tunneling; only 59 strips remain

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Treumer, J., Neumann, L., Lorenz, B., Pfleging, B. (2023). Fast Triangle Strip Generation and Tunneling for Different Cost Metrics. In: Chmielewski, L.J., Orłowski, A. (eds) Computer Vision and Graphics. ICCVG 2022. Lecture Notes in Networks and Systems, vol 598. Springer, Cham. https://doi.org/10.1007/978-3-031-22025-8_13

Download citation

Publish with us

Policies and ethics