HeadlinesBriefing favicon HeadlinesBriefing.com

Brainfuckで書かれたレイトレーサー

Hacker News •
×

著者はC++システムプログラミングコンテストの準備中にCMakeを再学習し、一般的なプログラミング言語でツールを書くという主張に遭遇しました。CMakeでレイトレーサーを書くという提案に魅了された著者は、代わりにBrainfuck(BF)を選びました。これは8つの操作だけとu8値を保存するセルの一方向無限テープを持つミニマリスト言語です。BFのシンプルさは、直接的なコードベースを作成するのに理想的であるように思えました。数値表現には符号付きQ16.16固定小数点形式を使用し、半径1000の球体を含むシーンのレンダリングに十分な解像度と範囲を提供しました。このプロジェクトの目標は、複雑なCの解析を避けて、RIWのMetalセクションから正確な画像をレンダリングすることでした。コードはLLMを使用してSSAのような形式に変換され、再帰的なコードは反復的にされ、変数には名前の衝突を防ぐためのプレフィックスが付けられました。