DirectX

DirectX

VisualStudio の HLSL テンプレートがおかしい その2

以前に、 VisualStudio の HLSL テンプレートがおかしい として、修正したシェーダー用のプロジェクトテンプレートですが、 Visual Studio 2017 の更新をしたら、また妙な状況になってしまったようです。 もしかすると、先の手作業の修正が引き金で新規にインストールした場合には、おかしな構造ながらも正常に動くのかもしれません。
DirectX

Visual Studio Graphics Debugger の終了

Windows 10 October 2018 Update (1809) で、 Visual Studio 2017 の Graphics Debugger が正常に動かなくなりました。最近は Vulkan を勉強していることが多く、 VS の Graphics Debugger は使っていませんでした。再び D3D12 の勉強を再開した今日、この問題を発...
DirectX

VisualStudio の HLSL テンプレートがおかしい

15.8.x のどこかのバージョンから、以下のようにシェーダーの作成の項目が減ってしまいました。 (自分の記憶では、15.8.1 の時点では大丈夫でした)。 この画面は 15.8.5 のものです。 本来ならば、ここに頂点シェーダーやピクセルシェーダー、ハルシェーダーといった項目も出現していなければなりません。 この問題を解決する方法がわかったので、これにつ...
DirectX

NVIDIA Nsight Graphics を試す

NVIDIA Nsight といえば、 Visual Studio に統合されて、グラフィックス API 使用時のデバッグのお供として定番のものでした。これのスタンドアロン版、 Visual Studio に統合されないで単体で使用できるアプリケーションとして、「NVIDIA Nsight Graphics」が公開になりました。 今のところ、専用のドライバ...
DirectX

DirectX11 でマルチフルスクリーン その3

DirectX11 でマルチディスプレイ環境で全てのディスプレイでフルスクリーンモードとしたいのに SetFullscreenState が失敗してしまう件の続報です。 この症状は、 Windows10 Creators Update 適用環境でも発生します。おそらく RTM 版から挙動は変わっていないのでは、と思います。詳しくは、前回までの記事を参照して...
DirectX

HLSL pow 関数の怪

pow 関数の挙動が昔と今で変わった!という話を聞いたので調査することにしました。 今回はスペキュラーの計算で使用している pow 関数の計算が妙なことになっているとのことだったので同じようにスペキュラの計算を行ってみることにします。なおインターネットで調べてみると、同じような症状に出遭っているような文面を見かけることができました。 傾き指向プログラミン...
DirectX

Draco を C++ と DirectX11 で触ってみる 後編

前回は draco のビルドと、サンプルのモデルデータをとりあえず読み込んで描画を行いました。今回は、モデルデータをコンバートする部分と、別のモデルデータの読み込みについて確認したいと思います。 コンバート 現時点において Draco をビルドすると ply, obj ファイルから drc ファイルを生成するコンバーターが付属しています。 使い...
DirectX

Draco を C++ と DirectX11 で触ってみる 前編

Google の Draco が公開されています。これは 3D データ圧縮ライブラリでして、 Zip よりも効率よく圧縮ができるというのが特徴です。公開されたのは2017年1月ごろの話なので、ずいぶんと出遅れている状態ですがちょっと触ってみました。 効果的に使える場面は WebGL の環境だと思いますが、あえてデスクトップPC の DirectX11 ...
DirectX

DwmGetDxSharedSurface を使ってみた

Windows の隠し API である DwmGetDxSharedSurface を使ってみました。 これは Windows7 以降で存在するようで、無事に Windows10 の環境でも使えました。 そのまま素直に使おうとするといくつか課題はありますが、面白い機能だと思ったので紹介することにしました。なお Undocumented API の1つなの...
DirectX

OpenGL と DirectX11 で共有リソース

前回は NV_DX_interop 拡張で OpenGL と DirectX9 のリソース共有でした。 今回はその後続の拡張である NV_DX_interop2 を試してみたいと思います。 こちらは DirectX10 以降のリソースに対応しているようです。そこで DirectX11 と OpenGL でのリソース共有を実験してみます。
タイトルとURLをコピーしました