点を描くところから始めるRust製ソフトウェアラスタライザ
執筆中
少なくとも、学会発表のため9/5あたりまで凍結appbird.icon
環境
Apple M2 Pro
Result draw_pixel(pixel p)
必要となる知識
つまり、理論はなんか知ってるけど実際ラスタライザってどう作るん?という状況appbird.icon Rustでもやってみようじゃないかということでやってみるappbird.icon 到達点
最適は目指さず、必要があれば愚直な手段を取る
Rustの学習ついでにやっていることなので、書かれているコードはアルゴリズム的にもRustの作法的にも最適でない
三角形ポリゴンで構成されたオブジェクト(モデル)を三次元空間上に配置し、特定の位置から表示できるようにする やらないこと
コードは綺麗に書かない(人に教えることを目的として記事を書かない)
(---> 時間がかかりすぎる、やるなら後で)
方針
結果の可否はエラーではなくResult型で表す
先行事例
参考資料
クレート
記法
AC.icon プロジェクトのセットアップ
AC.icon GitHubにリポジトリを上げる
一旦中断。学会の資料作りの準備やるappbird.icon
WJ.icon z-bufferを取る。
WJ.icon オブジェクトを作る
WJ.icon モデルデータを設定する。
WJ.icon 一個のモデルを放物線状に落下させる。
WJ.icon 複数個のモデルを生成しては放物線状に落下させる。
でかい目標