Abstract
The introduction of the Direct3D 12 and Vulkan graphics APIs has caused a big shift in how video games are developed. However, this shift has also brought about significant challenges, including increased complexity in graphics development and difficulty in supporting lower-end platforms like web browsers and older Android devices. As a result, many developers continue to rely on outdated APIs, despite their limitations.
To address this issue, this paper presents a novel software library that enables developers to seamlessly create applications using either a modern or a classic API style while simultaneously targeting all platforms, without additional effort. We provide a detailed analysis of the performance implications of each development strategy and effective tuning methods to optimize the library’s performance.
Our approach is particularly important for serious games, as their target audience is used to the look of modern video games but does not necessarily own modern gaming hardware. By supporting lower-end devices, our software library enables developers to create serious games that can be accessed by a wider range of users, regardless of their device’s age and processing power.
In summary, this paper offers a solution to the challenges associated with graphics development and cross-platform support, enabling developers to leverage the benefits of modern graphics APIs without sacrificing compatibility with lower-end devices.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
References
Blythe, D.: The direct3D 10 system. In: ACM SIGGRAPH 2006 Papers, pp. 724–734 (2006)
Sandmel, J.: Working with metal-overview. Apple WWDC (2014). https://developer.apple.com/videos/wwdc/2014
Frazier, C., Leech, J., Brown, P.: The OpenGL graphics system: a specification (2016)
Munshi, A., Leech, J.: OpenGL ES common profile specification version 2.0.25 (2010)
The Khronos Vulkan Working Group: Vulkan 1.0.48 - A Specification (2017)
Kenwright, B.: Introduction to the WebGPU API. In: ACM SIGGRAPH 2022 Courses, pp. 1–184 (2022)
Lustig, D., Martonosi, M.: Reducing GPU offload latency via fine-grained CPU-GPU synchronization. In: 2013 IEEE 19th International Symposium on High Performance Computer Architecture (HPCA), pp. 354–365. IEEE (2013)
Bilodeau, B.: Efficient compute shader programming. In: Presentation, Game Developers Conference, San Francisco, CA (2011)
Pettineo, M.: Using bindless resources with DirectX raytracing. In: Marrs, A., Shirley, P., Wald, I. (eds.) Ray Tracing Gems II, pp. 257–279. Apress, Berkeley (2021). https://doi.org/10.1007/978-1-4842-7185-8_17
Abdellah, M., Eldeib, A., Owis, M.I.: GPU acceleration for digitally reconstructed radiographs using bindless texture objects and CUDA/OpenGL interoperability. In: 2015 37th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC), pp. 4242–4245. IEEE (2015)
Bolz, J.: OpenGL bindless extensions. NVIDIA Corporation (2009)
García, A., Ávila, F., Murguía, S., Reyes, L.: Interactive ray tracing using the compute shader in DirectX 11. In: GPU Pro 360, pp. 117–140. AK Peters/CRC Press (2018)
Carvalho, M.Â.A.D.: Exploring mesh shaders. Doctoral dissertation (2022)
Peddie, J.: The sixth era GPUs: ray tracing and mesh shaders. In: Peddie, J. (ed.) The History of the GPU-New Developments, pp. 323–360. Springer, Cham (2023). https://doi.org/10.1007/978-3-031-14047-1_7
Acknoledgements
The investigated research of this contribution partially has been funded by strategic invest of the Serious Games group at TU Darmstadt in the context of its research activities for the creation/authoring of Serious Games.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Konrad, R., Göbel, S. (2023). A Cross-Platform Graphics API Solution for Modern and Legacy Development Styles. In: Haahr, M., Rojas-Salazar, A., Göbel, S. (eds) Serious Games. JCSG 2023. Lecture Notes in Computer Science, vol 14309. Springer, Cham. https://doi.org/10.1007/978-3-031-44751-8_4
Download citation
DOI: https://doi.org/10.1007/978-3-031-44751-8_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-44750-1
Online ISBN: 978-3-031-44751-8
eBook Packages: Computer ScienceComputer Science (R0)