プログラミング

プログラミング

「ゲームプログラマになる前に覚えておきたい技術」 VS2012対応

VisualStudio2012の季節がやってきたので、「ゲームプログラマになる前に覚えておきたい技術」のサンプルプロジェクト群を対応してみました。基本的にVisualStudio2010版なのですが、元々が 2008用のためいくつか設定し直しやソースコードを変更している部分があります。 必要な物(準備) VisualStudio 2012 (RTM版で動作...
DirectX

VisualStudio 2012とDirectX SDK

どうやらVisualStudio2012を使う状況においては、DirectXSDKにも注意が必要のようです。 VisualStudio2010を使う際にもDirectXSDKの諸注意がありましたが、2012においても同様に注意が必要のようです。 まず結論からいうと、うまく動作するDirectX SDK にはある範囲があるようです。 手元にインストールしてあっ...
データ解析

PVRTCテクスチャの解析 その5

以下は2BPPの補間モード適用状況においての話。自分用のメモですがちょっと残しておきます。 Modulation BitのLSBに 補間モードのフラグが格納される. LSB = 0 なら 水平垂直の補間モード(仮にモードA) LSB = 1 なら 1方向の補間モード(仮にモードB) モードBの場合、ブロックの中心となる位置のModulation Bitの値を...
データ解析

PVRTCテクスチャの解析 その4

ようやくデコード(仮)が出来ました。 6種類くらいの並び替え方式を試していたらピタリと当てはまる物があったのです。 これで一段落かと思いきや、2BPPタイプのほうがとても難しい。 今までは割と素直な4BPPタイプの物を扱っていました。 4BPPだと処理単位が正方ブロックでModulation Dataと呼ばれる部分の並びもwhite paperにあったりして...
データ解析

PVRTCテクスチャの解析 その3

引き続PVRTCテクスチャのデコードをやっていました。 カラーデータの読み込みと RGBA8 への展開処理を再度チェックして修正した状態の物が下記の状態です。 とりあえず仮想イメージA,Bは使用されている色情報としては正しそうな感じになってきました。 ポイント 前回から見直した(修正した)部分は、カラーA,Bそれぞれを単に出力するのではなく、隣接するピクセル...
データ解析

PVRテクスチャ形式の解析 その2

以前調べてみたときから9ヶ月くらいたっていますが、最近また調べてみてわかったことを書いておこうと思います。ここでPVR形式と言っていますが、ファイルフォーマットとしての形式のことと、PowerVRのテクスチャ圧縮 PVRTC とごっちゃになっていました。調べてみた対象としては両方とも含むのですが、どちらかといえばPVRTCについて興味があるといった感じです。...
プログラミング

Windows8をインストールしてみた

今週15日にMSDN向けにはWindows8やVisualStudio2012が公開されました。 そこで早速ダウンロードして空いているPCにWindows8を新規にインストールしてみました。 インストールについて 新規インストールしましたが、ユーザー設定等が出てくるのは最後の仕上げ部分となっていました。最初にどのディスクにインストールするか決めた後は、ほぼ放...
OpenGL

OpenGL 4.3とOpenGL ES 3.0が出た!

つい先日にOpenGL 4.3とOpenGL ES 3.0の仕様が公開となりました。 ES3の仕様書はこちら ざっとES3について目を通してみたところ、DirectX9からDirectX10へ切り替わったときのような印象を受けました。それは、テクスチャ配列やtransform feedback, 定数バッファなどのDX10の機能が入ってきたからだと思います。...
OpenGL

NVIDIAのシェーダー言語とか その2

前回の続きです。 結局、NVIDIAの配布するライブラリ(Cg Toolkit)に依存してしまうけど、DirectX/OpenGLで共通のシェーダーソースコードを使用することが可能になります。Cg言語は HLSL と大分似ているのでコードは書きやすいと思われます。 OpenGLに純粋に従うのであれば、 GLSL にてシェーダーを記述することになりますが、Di...
DirectX

NVIDIAのシェーダー言語とか

NVIDIAはHLSLによく似たCgというシェーダー言語をサポートしている。 Cg Toolkitという名前でランタイムとツールとを用意していて、これを用いればNVIDIAだけに限らず AMD RadeonでもCg言語を用いたシェーダーを使えるようだ。 このCgは非常に検索性が悪い(笑)ので何とかしてほしいところですね。"Cg"って用語がもはや一般的すぎて・...