2018.11.28

DirectXShaderComilerをVisual Studio 2017のカスタムビルドに加える

DirectXShaderComilerをVisual Studio 2017のカスタムビルドに加える記事ですが、これは参考にしたい。

Using A Custom Toolchain In Visual Studio With MSBuild
http://www.reedbeta.com/blog/custom-toolchain-with-msbuild/

VulkanでGeForce RTXでレイトレーシングの話題

VulkanにはNVIDIAの拡張VK_NV_raytracingがあるのですが、もう開発はできるようですね。

GitHubにはいくつかのサンプルや実装例のプロジェクトが来ています。

rtxON
https://github.com/iOrange/rtxON


vRt
https://github.com/world8th/vRt

それからDXRと同時に開発する人向けにDirectXShaderCompilerのVK_NV_raytracing用のシェーダの出力を開発しているブランチもあります。

https://github.com/sparmarNV/DirectXShaderCompiler/tree/NV_ray_tracing


先日紹介したSlang(以前の記事)でも対応の話がきているようですね。

https://github.com/shader-slang/slang/commit/039c233d9e4617ba9edd702a8275df0837ca8365

そんなわけで、DXRとVK_NV_raytracingマルチプラットフォーム開発ということも環境の整備は進んできそうですね。

あとは、Appleのレイトレ環境向けの展開でしょうかね。

2018.11.19

ShaderConductor 0.2.0とバイナリ提供

ShaderConductor 0.2.0からビルドしたWindowsバイナリ提供が行われるようなったみたいです。

Version 0.2.0
https://github.com/Microsoft/ShaderConductor/releases

実行ファイル以外に、DLLでの運用もできるのでツールに組み込むとかアリな感じもします。

Sc

実際に上記のPowerShellが実行してみた感じですが、現状見た感じプリプロセッサの対応がなさそうに思います。

バージョンの話では、このバージョンからすべてのシェーダステージの変換がGLSL、ESSL、MSL対応になったようです。ソースから利用する方はmacOSやLinuxもOKみたいですね。

ShaderConductorについて、以前書いた記事は下記です。

ShaderConductor : Microsoftのオープンソースシェーダ言語変換ツール
http://www.shader.jp/?p=2383

HalcyonのModern Graphics Abstractions & Real-Time Ray Tracingのスライド


Halcyonの集大成的なスライドですね。

Halcyonは、次世代レンダリングエンジンというよりは、まだ正体がはっきりしない次世代に来る可能性のある技術を検証してるという感じでしょうね。

プロダクションで使えないものも多くありますからねぇ。

ようやくそろったOctober 2018 Update向け開発環境

October 2018 Update向けWindows SDKが一緒にダウンロードができるのが15.9から(単体インストールは可能)なので、ようやく開発環境がそろったという感じですね。

「Visual Studio 2017」の最終版v15.9が公開 ~10年のサポートを受けるには更新が必須
https://forest.watch.impress.co.jp/docs/news/1153483.html

2018.11.16

meshoptimizerからMesh Shaderへ

メッシュ最適化ライブラリmeshoptimizer v0.9がリリース
http://www.shader.jp/?p=2397

そういえば、記事で触れ忘れていたのですが、Mesh Shader周りへの対応はniagaraで対応されるためなんでしょうね。

https://github.com/zeux/niagara

2018.11.14

Windows 10 October 2018 Update配信再開

Windows 10 October 2018 Update配信再開されたようですね。

PC版BFVの発売に間に合った?

https://blogs.windows.com/windowsexperience/2018/11/13/resuming-the-rollout-of-the-windows-10-october-2018-update/

11/13と11/14のShader.jp記事の更新

ちょっと文章量が多めなのでリンクだけ。

2018.11.12

HLSL ベースの新しいシェーダ言語Slang

NVIDIAのFalcorのリポジトリを見ていたらシェーダはHLSL以外にSlangというのが使えるという話が書かれていました。

Slang
https://github.com/shader-slang/slang

Slangの言語仕様や設計についてはSIGGRAPH 2018で発表されています。この言語はHLSLを拡張したシェーダ言語のようですね。逆にC++と近づけていく…と言うわけでは無いようです。

Slang: Language Mechanisms for Extensible Real-time Shading Systems
http://graphics.cs.cmu.edu/projects/slang/

Slangは、Direct3D12(DXBC/DXIL)とVulkan(SPIR-V)向けの言語(GLSLも出せなくはないそうですが完全ではないそうです)で拡張性や保守性を考慮した言語になっているようですね。

言語のサンプルを見ているとおおむねHLSLの文法に近いですが、ParameterBlockという仕組みでdescriptor table /setsの部分を扱いやすくしたり、ジェネリックやinterfaceという構文の拡張でプリプロセッサだらけになるのを防いだり...という部分が拡張されているようですね。

あと、registerやlayoutなども記述しないで済むというところも良いところですね。特にDirect3D / Vulkanのマルチなどのケースでは抽象化された方がいいですね。

https://github.com/shader-slang/slang/blob/master/examples/hello-world/shaders.slang

https://github.com/shader-slang/slang/blob/master/examples/model-viewer/shaders.slang

シェーダがDXILやSPIR-Vなど中間言語型に移っていくとフロントエンドはHLSLやGLSLのままでなくて良いわけですし、C++の方向に向かう以外にも既存のシェーダ言語のそのAPI独自の部分を隠す形というのがいいのかもしれませんね。

SIGGRAPH ASIA 2018 Technical Paperトレイラー

今年は東京開催ということもあり夏のSIGGRAPHに続いて、SIGGRAPH ASIA 2018にもフルカンファレンス参加ですが、そういえばTechnical Paperトレイラーのチェックまだでしたね。

日本開催で、東京となると自宅から通えるのが良いですね。

より以前の記事一覧