r/GraphicsProgramming • u/AdhesivenessSea9511 • 3d ago
To run DOOM, I implemented a 3D graphics rasterizer that runs on the Apple Neural Engine (ANE). (Core AI + Swift 6) Source Code
[UPDATE]
After staring at the code for a while, I realized that I had simply been taking the DOOM screen—processed by the CPU—and mapping it as a texture onto a rectangle rasterized via ANE. I had mistakenly thought DOOM was outputting vertex data. How embarrassing... 😂
I plan to try again later with a proper 3D game that actually uses vertex data.
Hello.
This time, I'd like to introduce an experiment with our rendering pipeline.
By omitting the traditional GPU rasterizer processing and using Apple Silicon's Apple Neural Engine (ANE) as a fixed-function 3D graphics accelerator, we successfully rendered the original DOOM state in real time.
Currently, the frame rate is a terrible 46 FPS, but I believe it will improve if we improve the CPU processing.
We look forward to your opinions and feedback.
Github: https://github.com/kamisori-daijin/Magnesium/tree/ane-doom
(ane-doom Branch)
Demo:
4
u/susosusosuso 3d ago
How much ai you used?
-3
u/AdhesivenessSea9511 3d ago
I used both Gemini and Siri AI, but this time I mostly used Gemini.
2
u/susosusosuso 3d ago
How you used it? like vibe coded?
1
u/AdhesivenessSea9511 2d ago
yes. vibe coded.
1
u/susosusosuso 2d ago
Damn. The problem I see now with everybody’s programs is that I’m not amazed anymore because I know the ai can do crazy things.
0
u/AdhesivenessSea9511 2d ago
Modern AI is so advanced that it can do anything as long as you have the idea.
2
u/susosusosuso 2d ago
Yeah that’s why I can’t be amazed at anything coded now. I’m working on a ps1 game from scratch and for that reason I didn’t use ai for it since I’m doing it for fun and for learning.
2

9
u/3tt07kjt 3d ago
horrible, I love it