Don’t have a next-generation console or fancy new RTX 3000 or RX 6000 graphics card, but do you have an old Super Nintendo lying around? Thanks to game developer Ben Carter, now you too can experience ray tracing. Assuming you also have a DE10 FPGA board and a whole lot of technical know-how, that is.
Yesterday, Carter, who has credits on video games, including the FIFA series and even the 3DS remake of Star Fox 64, uploaded a brief demo of a project called SuperRT to his YouTube channel. Based on the external Super FX chip used in some Super Nintendo game cartridges (most notably the original Star Fox) to allow the system to render crude low-poly graphics, SuperRT aims to do the same for ray-tracing.
To that end, Carter’s taken an actual Super Nintendo game, replaced the game ROM with one that he personally developed, and connected the whole cartridge to a DE10 FPGA board running custom software. Then, he simply needs to plug the cartridge into an actual Super Nintendo, and bam. He now has a 16-bit console with primitive ray tracing, plus a brief first-person game to show it off.
“What I wanted to try and do was something akin to the Super FX chip used in titles such as Star Fox, where the SNES runs the game logic and hands off a scene description to a chip in the cartridge to generate the visuals,” Carter writes on his blog post about the project, where he also explains that to better simulate an actual Super Nintendo external chip, he’s purposefully not using his FPGA board to its full potential. “To that end I’ve deliberately tried to restrict myself to just using a single custom chip for the design, not making use of the ARM core available on the DE10 board or any other external processing resources."
The end result is a game demo that looks like if Star Fox were made in a 1990s version of Unreal Engine. While the game objects in Carter’s demo look distinctly retro, the lighting is eerily similar to something you might see in Cyberpunk 2077. Which, given that game’s aesthetic, is actually pretty appropriate.
But what’s most impressive, obviously, is that this is all the processing runs on an actual Super Nintendo, with Carter’s FPGA board acting merely to generate imagery. Obviously, Carter’s board wouldn’t fit into a SNES cartridge, but it’s fun to think about what might have been.
Carter’s blog states that the goal of this project was to help him learn about FPGAs and the Verilog language associated with it. To that end, he’s also posted his process to both his YouTube channel and blog, including his code. Obviously, it's a bit more complicated than copying Carter's code and plugging a few machines into each other, so if you really want to play Star Fox with ray tracing, we’ve got your next quarantine project lined up for you.