As part of one of my uni classes I've made a CUDA version of Fox Raycaster (the CPU one got optimized a lot and has had bugs in it fixed too):
https://github.com/FRex/Fox2SFML for Sprites, ImGui, Windowing and timing the raster on the CPU.
CUDA for timing and raster itself on the GPU.
A bit of OpenGL to go via a pixel unpack buffer straight to sf::Texture so technically data goes CUDA -> PBO -> GL texture, never making a round trip to the CPU.