« 2020年11月 | トップページ | 2021年1月 »

2020.12.15

久々のDirect3D12記事の話

最近はあんまりC++で書く仕事少なめになってきたのではありますが、ちょっとブランクを取り戻そうとDirect3D12のTipsを準備しています。

とりあえず、Mesh Shaderとかあの辺を手を出す話の前のリハビリとして、頂点バッファをShader Resource ViewやUnordered Access ViewとしてCompute Shaderに入れて中身を読み書きするようなネタですね。

Compute Shaderでスキニングやブレンドシェイプ、パーティクルの処理などをしてキャッシュするみたいな話ですね。現在のレンダリングエンジンではシャドウパスやG-bufferパスやフォワードレンダリングパスなど複数回で描画を行いますが、パスの単位ごとに頂点処理するのは無駄があるのでキャッシュするわけですね。そうしたテクニックのための前準備という感じですね。

あと、Compute Shaderの話なのでせっかくなのでComputeのコマンドリストやコマンドキューの話もしておこうかと思っています。Async Computeとかの入り口ですね。

2020.12.13

HDRディスプレイ追加購入

自宅ではBen-QのSW271というHDRディスプレイを使ってたんですが、新たにPA27UCXを購入しました。

https://www.asus.com/jp/Monitors/ProArt-PA27UCX/

最大輝度350nitsぐらいのものから一気にHDR1000のものに変えたのでかなりHDRの恩恵が感じられるものに変わりました。とりあえず、Cyberpunk 2077を遊んでますが、自分で書くプログラミングネタでもHDRネタ再開したいですね。

2020.12.09

Intelのゲーム向けC++タスクスケジューラライブラリGTS-GamesTaskSchedulerが大幅更新

IntelがGitHubで公開しているGTS-GamesTaskSchedulerが大幅に更新されているようです。

GTS-GamesTaskScheduler
https://github.com/GameTechDev/GTS-GamesTaskScheduler

このライブラリはゲーム向けのC++のライブラリで並列処理ライブラリという感じで公開されましたが、長らく更新がありませんでした。

ドキュメントなども整備されてきている(ただし、まだTBDも多いです)ので、マルチコア環境向けにゲームや自作ゲームエンジンなどにタスクスケジューラがほしかった人には好さそうですし、学ぶにもよいのではないかと思います。

ドキュメント
https://gametechdev.github.io/GTS-GamesTaskScheduler/documentation/html/developer_guide.html

CPUベンダーのライセンス的に使いやすいライブラリということで開発の再開は今後も期待したいですね。

« 2020年11月 | トップページ | 2021年1月 »