2010-07-01から1ヶ月間の記事一覧

OpenGLでSpriteBatchクラスを作る。

VertexBufferのテンプレート化 VertexBufferで扱う頂点は、 2Dか3Dか colorを持つかどうか テクスチャ座標を持つかどうか などユーザが自由に決めることができるので、テンプレート化しておくと便利です。 /** * 頂点バッファに特化したバッファオブジェクト…

BufferObjectクラスを作る。

今回はOpenGLでDirect3D風の頂点バッファクラス、インデックスバッファクラスを作ります。 まずはOpenGLのバッファオブジェクトの基礎から。 バッファオブジェクトの使用手順。 1.バッファオブジェクトが利用可能かどうか調べる。 1-1.サポートされているExt…

Programmers' Grimoireを予約しました。

C++

わくわく。 超楽しみ。私はまだいわゆる「変態(褒め言葉)」の域には達していませんが、これを読んで一歩でも「変態」に近付けるよう頑張ります!変態C++erになりたい貴方も是非。 [Grimoire]「プログラミングの魔導書」予約開始! - Faith and Brave - C++…

std::unique_ptrでHDCとHGLRCを扱う。

ゲームフレームワーク的なものを作る。番外編1。 windowsプログラミングにおいて、HDCなどのハンドルの管理は非常に面倒ですよね? HWND hwnd = ...; HDC hdc = GetDC( hwnd ); GDIを使った描画など; ReleaseDC( hwnd, hdc ); //使い終わったらReleaseするの…

ゲームフレームワーク的なものを作る。(10)〜OpenGLでテクスチャを使う〜

まずはOpenGLでテクスチャを使用する際の基本から。 R8G8B8A8の32bitテクスチャを作る GLuint texture; Size size( w, h ); DWORD pixel[] = { ... }; //適当なピクセルデータを設定しておく glGenTextures()で指定枚数のテクスチャを作成。とりあえず1でよ…

ゲームフレームワーク的なものを作る。まとめ。

とりあえず、ここまでのまとめ。 今後も週に1,2回程度のペースで追加していきます。 ゲームフレームワーク的なものを作る。(20)〜2Dキーフレームアニメーション〜 ゲームフレームワーク的なものを作る。(19)〜シーングラフ〜 ゲームフレームワーク的なもの…

ゲームフレームワーク的なものを作る。(9)〜OpenGLの初期化〜

今回はOpenGLを使った描画機能を追加していきます。久しぶりのOpenGLですね。 OpenGLの初期化 まず、OpenGLを利用するためのヘッダとライブラリをプロジェクトに追加します。VCをインストールすれば、標準で必要なファイルが含まれるので、特に新しくライブ…

ゲームフレームワーク的なものを作る。(8)〜描画エンジンの抽象化〜

描画エンジンの抽象化 windowsでゲームを作る場合、「Direct3D」か「OpenGL」を選択することになりますが、どちらも使ったことがある人であれば、誰もが一度はインターフェイスを用意して両方扱えるようにしたいと思うはず。 で、今回は上記のような単純なイ…