You will be replacing the rendering engine of a suitable open source game engine with a GPU based raycasting engine. The aim is to investigate whether the rendering engine of an existing game engine can be replaced with an experimental rendering engine to still achieve real-time rendering (on a powerful GPU). Raycasting is the basic algorithm type we need for ongoing research into human perception. The overall aim is to replace the rendering engine with a rendering engine for human perceptual awareness and evaluate various different non-optically correct rendering modes and judge their effect on human perception. The basic version of this project will simply be about getting the raycasting engine to work and document how to change it further and study the impact on performance. A more advanced and challenging version of the project is to include some of the perceptual rendering effects in the rendering engine. You must have excellent programming and mathematical skills for this project and it will have to be implemented under Linux. The resulting software must be released under GNU GPL V3 or compatible license (due to the fact that our offline perceptual rendering algorithms are under the GNU GPL v3 licence).