Ubuntuでmin-camlとmin-rt
CPU実験の例のレイトレーサを動かす手順。
sudo apt install ocaml
sudo apt install libmpfr-dev
sudo apt install gcc-multilib g++-multilib
git clone git@github.com:esumii/min-caml.git
cd min-caml
./to_x86
make
cd min-rt
make
SLDファイル
code:contest.sld
-70 35 -20 20 30
1 50 50
255
0 1 1 0 20 20 65 0 20 45 1 1.0 250 128 210 0
0 3 1 0 25 40 70 0 0 40 1 1.0 250 128 210 0
0 3 1 0 0 30 30 0 -5 0 -1 1.0 250 128 211 0
0 1 1 0 20 10 30 0 -10 80 1 1.0 250 128 211 0
0 2 1 0 0 -1.5 -1 0 0 50 1 1.0 250 128 211 0
0 1 1 0 22 28 28 0 -5 0 1 1.0 250 0 211 211
0 3 1 0 40 28 28 0 -5 0 1 1.0 250 0 211 211
0 3 1 0 0 15 15 0 -5 0 -1 1.0 250 0 211 211
0 3 1 0 15 25 25 0 -5 70 1 1.0 250 211 0 0
0 1 1 0 5 11 45 0 35 40 1 1.0 250 211 128 0
0 3 1 0 30 45 75 0 0 40 1 1.0 250 211 128 0
0 1 1 0 25 41 70 0 5 40 1 1.0 250 0 0 0
1 1 1 0 100 5 200 0 -35 150 1 1.0 250 200 200 200
0 3 1 0 25 10 10 0 -5 0 1 1.0 250 211 128 128
0 3 2 0 25 20 20 0 0 70 1 0.3 0 0 0 255
2 3 1 0 20 20 20 100 40 120 1 1.0 150 255 255 255
0 2 2 0 0 0 -1 0 0 200 1 0.2 0 255 0 0
-1
0 1 2 -1
3 1 4 -1
5 6 7 -1
8 -1
9 10 -1
12 -1
13 -1
14 -1
15 -1
16 -1
-1
11 0 1 2 3 4 6 -1
99 9 8 7 5 -1
-1
PPMファイル
code:contest.ppm
P6
768 768
255
(3バイト * 768 * 768のバイナリデータが続く)
P6
カラー、バイナリ
高さ768、幅768
255
R、G、Bそれぞれ8ビット(0〜255)
1ドット = 3バイト(24ビット)
ファイルサイズ計算
ヘッダ部分(上記の例だと15バイト) + データ部分(768 * 768 * 3バイト)= 1769487バイト