Vulkan

Vulkan

Vulkan での排他フルスクリーン

Vulkan でフルスクリーンアプリケーションを作ろうと思ったら、全画面のウィンドウを枠なしで作るという方法でした。 いわゆる仮想フルスクリーンの手法です。OpenGL でもフルスクリーンのアプリケーションは同様の手順で作るので、特に違和感はありませんでした。 ただ、DirectX9 時には専用のフルスクリーン設定がありましたし、9.0c 以降では DXGI...
DirectX

RDPでGraphicsAPIは実行出来るか実験

前回、RDP で OpenGL アプリを起動させる方法を考えましたが、そもそも他のグラフィックスAPIではどうなのか、気になってきたので調べてみました。 RDP で動作するか? OpenGL : 動作しない DirectX11 : 動作する DirectX12 : 動作する Vulkan : 動作する まさかの OpenGL だけが動作し...
Vulkan

Vulkan で Texture, Sampler の独立設定

Vulkan のコードにおいて、テクスチャを使用する際に、サンプラとテクスチャとをまとめている VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER を設定する箇所がありました。 よく見かけるサンプルでは、 OpenGL でテクスチャを使用するのと同じ感覚で、 サンプラとテクスチャを1体にして使っていたりします。 ここで、他の設...
DirectX

NVIDIA Nsight Graphics を試す

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

Vulkan, D3D11 InterOp

Vulkan 1.1 で クロスプロセス API の相互運用機能 が標準に含まれたようだったので、再び Vulkan と DirectX11 (D3D11) の相互運用にチャレンジしてみました。 使用した拡張名としては以下のものになります。 VK_KHR_external_memory_capabilities VK_KHR_external_...
Vulkan

Vulkan 1.1 が発表された

Vulkan といえば 1.0 のバージョンのまま、マイナーバージョンアップを黙々と続けているものでしたが、今回 1.1 の発表となりました。実情としては 1.0.70 ≒ 1.1.70 みたいな感じで、 1.1.0 からの再スタートというナンバリングではないようです。 この記事を書いている時点においては、少々出遅れしたためか、既に Windows の V...
OpenGL

EXT_external_objects の実験

OpenGL 4.6 の発表の中で、各Graphics API との Interop の話がありました。 ここで、EXT_external_objects 拡張 (スライドでは EXT_memory_object となっていましたが) が、面白そうだったので触ってみました。 ただしこの内容は OpenGL 4.6 に含まれるものではなく、追加という位置付...
OpenGL

Vulkan から OpenGL へ描画

Vulkan で描画した結果を OpenGL の世界で使用することができます。 これには NVIDIA 拡張を使用するので、現時点においては NVIDIA のグラフィックスボードを使用していることが条件になります。 今回のこの拡張の名前は、 GL_NV_draw_vulkan_image というもので、将来的に他のメーカーも対応するようになればいいなと思...
DirectX

Vulkan のテクスチャを DirectX11 へ

以前 Vulkan の世界へ DirectX11 で作成したテクスチャをインポートするという実験をしました。今回はそれの逆、 DirectX11 の世界で Vulkan 側で作成したテクスチャを使用するということを試してみました。 Vulkan からのテクスチャエクスポート ということになりますね。今回もまた NVIDIA 拡張での実験です。
DirectX

Vulkan へ DirectX11 テクスチャをインポート

世の中の多くの Windows 環境で安定して使えるグラフィックス API は DirectX11 や OpenGL といったところだと思います。 Vulkan API は新しい API のため、既存のライブラリやフレームワークではまだサポートされていなかったりします。そのような状況のためか、 NIVIDA の Vulkan Extension では、 V...
タイトルとURLをコピーしました