hermemo-エルメモ-

OpenGLで自己学習型オセロAI  §2「石の描画」

time 2017/01/27

OpenGLで自己学習型オセロAI  §2「石の描画」

sponsored link

目標

盤面の情報を元に石を表示します。今回はあらかじめコード上で設定した石を表示し、次回任意の場所に石を配置します。

ソースコード

実行結果

特に動作はありません。表示されれば完了です。

 解説

盤面の情報[19]

[19]int boardmap[8][8];
盤面の状態を保存しておく変数を定義します。値の代入は[10]-[12]で定義した定数を使用します。

リセット関数[24]-[36]

今回は盤面の状態をリセットします。今後ゲームの状態のリセットなどを増やしていきます。

[26]-[30]
盤面の状態を全てnullにします。石が置かれていない状態です。

[32]-[35]
中央に置かれている石をセットします。
これのこと

石の描画[63]-[77]

[63]glPointSize(50);
点をのサイズを変更します。この設定は[64]で使用されます。

[64]glBegin(GL_POINTS);
[77]glEnd();
点を描画します。ただ、点といっても円形の描写はGLUTに実装されていないので四角形になります。今回は四角でも問題ないのでこのまま行きます。時間があったら円形の描写を実装しようと思います。

[65]-[74]
変数boardmapを読み出し、その情報に沿って石を配置します。

[68],[71]glColor3f(R, G, B);
色の設定を行います。白の場合は(1,1,1),黒の場合は(0,0,0)で直前に設定します。

[69],[71]glVertex2i(x,y);
(x,y)に描画を行います。[64]で図形の種類を点に[68],[71]で色を設定しています。これで石を描画します。

メイン関数[97]

[97]reset();
[24]-[36]で設定した描画関数を実行します。この位置はループに入る前なので、一度だけ実行されます。

次回予告

次回は石をマウスを使って置けるようにします。

最後に

OpenGLやGLUTを学びつつ布教するために記事を作成しています。
何かわからないことやご指摘がございましたら気軽にコメントをお願いします

sponsored link

down

コメントする




*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)



sponsored link