DirectX

DirectX

定数バッファはバッファリングしよう in DirectX12

当たり前の話ではあるのですが、たまに「バッファリング気にせずにコードが書かれているのでは?」と感じることがあったので本記事を書くことにしました。 バッファリングしないとどうなるか バックバッファ分の定数バッファを用意して、描画用と更新用のデータがかぶらないようにする必要があります。と、よく説明されているのですが、実際にどうなるかの撮影に成功した...
DirectX

DirectXShaderCompiler 使用時のシェーダーリフレクション

シェーダーコードのリフレクションを皆さんは使用していますか?DirectXで長らく使われてきた D3DCompiler (fxc) を用いて作られたシェーダーバイナリについては、 D3DReflect 関数を用いてシェーダーリフレクションにアクセス出来ます。 近年は徐々に fxc から dxc へ、DirectX Shader Compiler を使...
DirectX

Vulkan でも IDXGISwapChain を使う

今回の記事は実験的なネタです。 DirectX では描画結果を画面に反映するのに IDXGISwapChain を使用します。一方 Vulkan では VkSwapchainKHR を生成して描画結果を画面に反映します。それぞれのAPIがそれぞれの SwapChain を使うように出来ているのですが、ここで敢えて Vulkan の描画結果を DirectX...
DirectX

DXRを始めてみました

先日 NVIDIA の DXR Tutorial を試してみて、DXR界隈に第1歩を踏み出しました。あれからもうちょっと理解が進んだので、そのメモというか記録です。ようやくテクスチャを使ってみるところに到達です。 あれからどうしたか チュートリアルをやった結果、便利なヘルパー関数を使わずにもう1度最初から始めてみました。また1つずつ積み...
DirectX

NVIDIAが紹介する DXRのチュートリアルをやってみた

NVIDIA が DirectX Raytracing のチュートリアルを公開しています。遅ればせながら、このチュートリアルをやってみたのでその紹介です。以下のアニメGIF画像はラスタライズとレイトレーシングとの描画モードを切り替えている図です。三角形3枚のほうが DXR による描画となっています。 NVIDIA DXRチュートリアル ...
DirectX

Presentだけを実行するとメモリが増えていく

DirectX12 のアプリケーション開発において、ほとんど何もしていないのに使用メモリがモリモリ増えていく事案に出遭いました。何もせずに、 Present メソッドを呼び出しているだけですが、使用メモリが増えていきます。 自分の環境は以下に示す状態となります。 Windows10 x64 1909 バージョンVisual Studio 201...
DirectX

DirectX12 Ultimate

次期バージョンのDirectXは DirectX13とはならずに DirectX12 Ultimate となるようです。以前に紹介した Windows10 20H1 でのDirectX12機能強化の機能セットを有しているものが、DirectX12 Ultimate となります。 機能について 先に紹介しているように以下の点が機能強化されます。 ...
DirectX

D3D11On12 を試す (2)

DirectX12 の機能の1つで、 D3D11On12 のお試し第2回です。 前回のブログ記事でピンと来ている人もいるかもしれません。DirectX12 の場合でも今までと同様で、文字列を描画するのに手間がかかります。 DirectXTKなど他のオープンソースライブラリの力を借りれば、比較的簡単にパフォーマンスと文字列描画を自分のアプリケーション...
DirectX

DirectX11 と Direct2D, DirectWrite で文字を描く

久しぶりに DirectX11 のコードを書いていました。初期化から画面のクリア処理まで圧倒的に短く100行くらいで終わりました。近年流行の低レイヤーグラフィックスAPIとは全然違いますね。 昔は DirectX11 の初期化コードでも長い!と思っていた頃がありましたが、今回このくらいの長さだと何も見ないでも記述できたこともあり手軽だなと思うようになりまし...
DirectX

D3D11On12 を試す (1)

DirectX12 の機能の1つで、 D3D11On12 を触り始めました。DirectX12 の中ではおそらくマイナー側な機能で注目されないと思いますが、そういうものこそ「すらりん日記」には相応しいと感じてますので、紹介します。 D3D11On12 とは D3D11On12 とは、 DirectX11 の API セットを DirectX12...
タイトルとURLをコピーしました