2023-01-01から1年間の記事一覧
今現在DirectX9時代のD3DXライブラリの調査をしていまして、 その備忘録になります。 Living without D3DX | Games for Windows and the DirectX SDK blog にDirectX10/11におけるD3DXを使用しない代替方法を示しています。 例えばID3DXMeshならば以下のライ…
imguiでボタンやチェックボックスを無効化したい場合 のソースはこちら。 static bool b_test = false; ImGui::BeginDisabled(true); // この行を記入する。 ImGui::Checkbox("test", &b_test); ImGui::EndDisabled(); // この行を記入する。
今回は テッセレーションの分割の種類のひとつであるPN-AEN(Crack-Free Point-Normal Triangles using Adjacent Edge Normals)の実装になります。 前回行ったPN Triangles テッセレーションでは、一部のポリゴンの継ぎ目で穴があく「クラック」という現象が…
今回は DirectXSDK(June 2010)のサンプルのひとつであるPNTriangles11サンプルの移植になります。Direct3Dのテッセレーション機能を使う最もシンプルなデモみたいです。PNTriangles11自体は以前から実装されていたみたいなんですが、私の中で存在を忘れてま…
今回はライティングエフェクトのひとつであるハーフランバートライティングの実装になります。ハーフライフで使われていたことで有名ですね。 ハーフランバートライティングで検索すれば多数ヒットしますので説明は省略します。簡単に言うと、このライティン…
今回はMMDファイル関連であるVPDファイルの読み込みと描画になります。MMDファイルでいうと、モデル(PMDファイル/PMXファイル)、モーション(VMDファイル)、ポーズ(VPDファイル)の中で三番目のポーズ機能(VPDファイル)になります。 ①VPDフ…
今回は無限平面の描画エフェクトの実装になります。以下みたいな実装のことですね。 自分が勝手に思っているだけなんですが、無限平面の描画というのは、ゲームプログラミングにおいて必ず通る道みたいなものでありただ実装するには必要となる数学も結構必要…
今回は動的LOD(レベルオブディテール)の実装になります。DirectXでいうDirect3D8のプログレッシブメッシュですね。実装方法については以下の書籍に実装方法がありそれをそのまま実装しています。(20年も経ってる!!古っ!!個人的にこの書籍にはとても役に…
お久しぶりです。前回の更新が2021年10月13日ですから、約17ヶ月ぶりの更新になってしまいました。いろいろ生活は代わりましたが、ゲーム開発はそのまま続けています。 環境もDirectX11( Microsoft DirectX SDK (June 2010) ) + Windows11のままです。今後も…