Stefan Petersson , pp. 47. TEK/avd. för interaktion och systemdesign, 2007.
It is a great challenge to develop a computer game. Today many games are developed in
large game studios where lots of skilled people are working together. Everyone has to know
what the final game should look like. Game designers are responsible for how the game
should feel and look like. This also means that they decide if a programmer has to develop
new techniques or not. Sometimes the game designers require lots of new techniques to be
developed. Such a new technique may be rendering particle systems with a lot of particles in
it. This is where this report will focus. To render particle systems it is necessary to know
about the limitations there are in both hardware and software. Until today particle systems
have been updated and calculated using the Central Processing Unit of the computer. With
Microsoft Direct3D 10 there are new ways to render particles using Geometry Shaders.
Geometry Shaders runs on the graphics card. This thesis focuses on testing rendering
performance between using Geometry Shaders and not using Geometry Shaders.
A questionnaire was sent to Swedish game developers to get more information about
relevant topics for investigation. A general answer was that Geometry Shaders always
increase particle rendering performance. This thesis investigates if and when the statement
is true or not. The hypothesis was obtained from the answers to the questionnaire.
Two test applications were used to investigate if the hypothesis was true or false. One test
application has particle calculations on the CPU of the computer. The other test application
has particle calculations on the GPU of the graphics card. Six different tests were done and
the Geometry Shader approach went out to be the fastest in five of the tests. Since not all
tests were faster than the CPU approach the hypothesis is not always true.