Skip to main content

Game Physics Engine Using Optimised Geometric Algebra RISC-V Vector Extensions Code Using Fourier Series Data

  • Conference paper
  • First Online:
Advances in Computer Graphics (CGI 2023)

Abstract

We describe an example of using a Geometric Algebra algorithm to compute motion in a game physics engine, we optimise the Geometric Algebra algorithm using GAALOP and utilise RISC-V Vector Extensions (RVV) to perform computations on vectors, we combine this with vectors used to represent a number of Fourier series to model x, y and z components of gravity, wind and surface friction. When RISC-V Vector Extension devices become available, we anticipate this method will lead to performance improvements over alternative approaches.

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 59.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 74.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

Notes

  1. 1.

    See Sect. 3.2 of [7].

References

  1. GitHub repository for code examples for the paper Game Physics Engine Using Optimised Geometric Algebra RISC-V Vector Extensions Code Using Fourier Series Data. https://github.com/ed-uts/GA-Game-Physics-Engine. Accessed 05 Aug 2023

  2. Lengyel, E.: Foundations of game engine development. Terathon Software LLC (2016). https://books.google.com.au/books?id=9

  3. Dorst, L.: The representation of rigid body motions in the conformal model of geometric algebra (2008)

    Google Scholar 

  4. Selig, J., Bayro-Corrochano, E.: Rigid body dynamics using Clifford algebra. Adv. Appl. Clifford Algebras 20, 141–154 (2010)

    Google Scholar 

  5. Hitzer, E., Lavor, C., Hildenbrand, D.: Current survey of Clifford geometric algebra applications. Math. Meth. Appl. Sci. (2022)

    Google Scholar 

  6. GAALOP Website. https://www.gaalop.de. Accessed 05 Aug 2023

  7. Hildenbrand, D.: The power of geometric algebra computing: for engineering and quantum computing (2021)

    Google Scholar 

  8. Hildenbrand, D.: Introduction to geometric algebra computing (2020)

    Google Scholar 

  9. Hildenbrand, D.: Foundations of geometric algebra computing (2012)

    Google Scholar 

  10. Wörsdörfer, F., Stock, F., Bayro-Corrochano, E., Hildenbrand, D.: Optimizations and performance of a robotics grasping algorithm described in geometric algebra (2009)

    Google Scholar 

  11. About RISC-V - RISC-V International RISC-V is a free and open ISA enabling a new era of processor innovation through open standard collaboration. https://riscv.org/about. Accessed 05 Aug 2023

  12. RISC-V V Vector Extension Specification GitHub repository. https://github.com/riscv/riscv-v-spec. Accessed 05 Aug 2023

  13. RISC-V V Vector Extension Specification v1.0. https://github.com/riscv/riscv-v-spec/releases/download/v1.0/riscv-v-spec-1.0.pdf. Accessed 05 Aug 2023

  14. Marks II, R.: Handbook of Fourier Analysis and Its Applications. Oxford University Press, Oxford (2009). https://doi.org/10.1093/oso/9780195335927.001.0001

  15. Hollingsworth, M.: Applications of the Fourier series (2008)

    Google Scholar 

  16. Schmitt, R., Fritz, P.: OP5 - A 3D-Fourier-descriptor approach to compress and classify 3D imaging data (2009)

    Google Scholar 

  17. Rosenhahn, B., Perwass, C., Sommer, G.: Pose estimation of 3D free-form contours. Int. J. Comput. Vis. 62, 267–289 (2005). https://doi.org/10.1007/s11263-005-4883-3

  18. Rosenhahn, B.: Pose estimation revisited. Christian-Albrechts-Universitat, Kiel (2003)

    Google Scholar 

  19. Li, H., Hartley, R.: New 3D Fourier descriptors for genus-zero mesh objects (2006)

    Google Scholar 

  20. ChatGPT. https://chat.openai.com. Accessed 05 Aug 2023

  21. https://github.com/ed-uts/GA-Game-Physics-Engine/tree/main/terrain. Accessed 05 Aug 2023

  22. May The Forque Be With You. https://bivector.net/PGADYN.html. Accessed 05 Aug 2023

  23. Bivector.Net. https://bivector.net. Accessed 05 Aug 2023

  24. Ganja.js. https://enki.ws/ganja.js/examples/coffeeshop.html#irAoiHVhn. Accessed 05 Aug 2023

  25. De Keninck, S.: ganja.js. (Zenodo 2020). https://zenodo.org/record/3635774

  26. QEMU A generic and open source machine emulator and virtualizer. https://www.qemu.org. Accessed 05 Aug 2023

  27. RISC-V Vector Extension Intrinsic Document. https://github.com/riscv-non-isa/rvv-intrinsic-doc. Accessed 05 Aug 2023

  28. RISC-V GNU Compiler Toolchain. https://github.com/riscv-collab/riscv-gnu-toolchain. Accessed 05 Aug 2023

  29. MachineWare GmbH. https://www.machineware.de. Access 05 Aug 2023

  30. MachineWare SIM-V. https://www.machineware.de/pages/products.html. Accessed 05 Aug 2023

Download references

Acknowledgements

This research is partly supported by an Australian Government Research Training Program Scholarship.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ed Saribatir .

Editor information

Editors and Affiliations

Appendices

Appendix

Code Listing for GAALOPScript Code

figure b

Code Listings for C Code Generated by GAALOP Making Use of RISC-V Vector Extension Instructions, Assembler Code Calling RISC-V Vector Extension Instructions for Vector Multiplication and Sum, and Makefile

figure c
figure d
figure e

Code Listing for C Code Using a Bitmask to Mask Vector Values and Makefile

figure f
figure g

Rights and permissions

Reprints and permissions

Copyright information

© 2024 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

Saribatir, E. et al. (2024). Game Physics Engine Using Optimised Geometric Algebra RISC-V Vector Extensions Code Using Fourier Series Data. In: Sheng, B., Bi, L., Kim, J., Magnenat-Thalmann, N., Thalmann, D. (eds) Advances in Computer Graphics. CGI 2023. Lecture Notes in Computer Science, vol 14498. Springer, Cham. https://doi.org/10.1007/978-3-031-50078-7_20

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-50078-7_20

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-50077-0

  • Online ISBN: 978-3-031-50078-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics