Vi utbildar för framtiden och skapar samhällsnytta genom vår forskning som levandegörs i nära samarbete med näringslivet. Vi bedriver forskning inom computer science, datateknik, software engineering och interaktionsdesign - från grundforskning till direkta tillämpningar. Institutionen har en stark internationell prägel och är delad mellan Chalmers och Göteborgs universitet.
We are engaged in research and education across the full spectrum of computer science, computer engineering, software engineering, and interaction design, from foundations to applications. We educate for the future, conduct research with high international visibility, and create societal benefits through close cooperation with businesses and industry. The department is joint between Chalmers and the University of Gothenburg.
(2022) Eriksson, Jacob; Wingård, Joakim; Chalmers tekniska högskola / Institutionen för data och informationsteknik; Chalmers University of Technology / Department of Computer Science and Engineering; Assarsson, Ulf; Sintorn, Erik
In this paper, we explore how the current state of the art in real-time ocean simula tions can be improved in terms of simulation accuracy, while preserving performance.
Current methods, both in academia and in the industry, simulate an ocean model in frequency space on the GPU, convert said model on an approximately frame-by frame basis to the spatial domain using the Fourier transform, and then read back the resulting heightfield to the CPU as input to the application’s physics engine. We propose a fully GPU-based simulation framework that eliminates these GPU readbacks, successfully eliminating the latency-induced simulation errors present in current solutions, while preserving both ocean interactivity and performance. Along this report we also present a prototype of our framework as an Unreal Engine project.
From comparing our proposed framework with the current state of the art, we find:
• a significant correction in simulation accuracy of boats and their wakes;
• near-equivalent GPU performance and improved CPU performance;
• the need to rewrite certain physics behaviors for the GPU that are commonly
available as built-in functionality in modern CPU-based physics engines;
• an arguably more complicated implementation.
We conclude that the errors are significant enough to consider in related work and that the proposed approach is worthwhile investigating further in future work.
The prototype code is available at: https://github.com/NeonSky/master-thesis