HeadlinesBriefing favicon HeadlinesBriefing.com

Ray Tracer en Brainfuck

Hacker News •
×

L'auteur a réappris CMake en se préparant pour un concours de programmation système en C++ et a rencontré des affirmations sur l'écriture d'outils dans des langues à usage général. Intéressé par la suggestion d'écrire un raytracer en CMake, l'auteur a au lieu de cela choisi Brainfuck (BF), un langage minimaliste avec seulement 8 opérations et une bande infinie unidirectionnelle de cellules stockant des valeurs u8. La simplicité de BF semblait idéale pour créer une base de code directe.

L'implémentation a utilisé un format à virgule fixe signé Q16.16 pour la représentation numérique, fournissant une résolution et une plage suffisantes pour rendre une scène avec une sphère de rayon 1000. Le projet visait à rendre l'image exacte de la section Metal de RIW, en évitant l'analyse C complexe. Le code a été converti dans un format similaire à SSA à l'aide d'un LLM, avec un code récursif rendu itératif et des variables préfixées pour éviter les collisions de noms.