カテゴリー別アーカイブ: AMD

AMD GPU Services (AGS) library 5.1リリース

AMD GPU Services (AGS) library 5.1が公開になっています.

https://github.com/GPUOpen-LibrariesAndSDKs/AGS_SDK

このライブラリはグラフィックスAPIがサポートしないAMD GPUの各種機能を使えるようにするSDKですが,5.1では

  • Radeon GPU Profiler,VS 2017対応
  • DX12対応
  • FreeSync 2 HDRディスプレイ対応
  • wave-level shader intrinsicsの追加

UE4やUnityなどを使用している開発者にもメリットがあるようですね.

Radeon GPU Profiler 1.0リリース

AMDがRadeon GPU Profiler 1.0を公開しました.

Radeon GPU Profiler 1.0
http://gpuopen.com/radeon-gpu-profiler-1-0/

Radeon GPU Profiler(ツールのページ)
http://gpuopen.com/gaming-product/radeon-gpu-profiler-rgp/

こちらのツールは,Radeon向けのGPUプロファイラーでDirect3D12とVulkanに対応しています.

キューやコマンドの実行状況やWavefrontの占有率、コンテキストロールのストールなどを分析できます.

紹介動画なども公開されています.

Baikal Renderer:AMD RadeonRaysベースのオープンソースレンダラ

GPU OpenでBaikal RendererというAMD RadeonRaysベースのオープンソースのレンダラが紹介されています.

Baikal Renderer: Open-source Radeon ProRender backend
http://gpuopen.com/baikal-renderer-open-source-radeon-prorender-backend/

RadeonProRender-Baikalリポジトリ
https://github.com/GPUOpen-LibrariesAndSDKs/RadeonProRender-Baikal

RadeonRaysはレイトレ-シングのライブラリですが,Baikalはマテリアルやライト,ジオメトリなどの高機能なレンダラになっているようです.

PIX 1705.16がリリース AMD GPU向けプラグイン DXIL対応がスタート

PIX 1705.16がリリースされました.

今回のリリースでは,AMD向けGPUのより深い分析に役立つプラグインの追加などがされています(NVIDIA向けはすでに公開済み。参考記事).

そのほかに,DXIL向けの対応が始まってきたみたいですね.まだ実装されていない機能は多いですが,今後の更新はDXIL向け機能が中心になりそうですね.

PIX 1705.16 – AMD GPU counters, preliminary DXIL support, and more warnings
https://blogs.msdn.microsoft.com/pix/2017/05/17/pix-1705-16/

AMD側でもGPUOpenで記事が公開されています.

DirectX12 Hardware Counter Profiling with Microsoft PIX and the AMD Plugin
http://gpuopen.com/directx12-hardware-counter-profiling-with-microsoft-pix-and-the-amd-plugin/

GDC 2017セッション動画,スライドがGDC Vaultで公開

GDC 2017セッション動画,スライドの一部がGDC Vaultで公開で公開になっています.

http://gdcvault.com/browse/gdc-17/

GDC VaultはGDCのセッションの動画やスライドが公開されているデジタルライブラリで有料サービス(GDCのパスの種類によっては参加者は1年間閲覧可)ではありますが,無料で見れるものが多くあります.

GDCに行けなかった方も気になってたセッションが公開されている,ということがあるかもしれません.

個人的に気になるGDC 2017セッションメモ ver 0.1

2/27~3/3開催のGDC 2017のセッションが結構発表されてきているのですが,個人的に気になってるセッションを抜粋してメモしておきます.現地に行くことができなくてものちのちの資料公開などがあることが多いのでメモですね.

なお,まだ一か月以上ありますし,セッションの全部が公開されていないので定期的にアップデートしてversionを上げていきます.versionを上げる際には,この記事を更新するのではなく新規記事でたてます.

なお,今回はグラフィックスが中心でVRなどほかの分野は今後のバージョンで追加していきます.

グラフィックス

AAA

AAAタイトルのグラフィックス開発事例です.

‘Destiny’ Shader Pipeline

Natalya Tatarchuk氏はUnityに移ったのでどうなるのかわかりませんが,前世代機も含めたマルチプラットフォーム開発でどうやってるか気になるところですね.

http://schedule.gdconf.com/session/destiny-shader-pipeline

Efficient Texture Streaming in ‘Titanfall 2’

テクスチャストリーミングはなかなか自分では獲得できていない技術ですし,PBRになってテクスチャ枚数が増えてる状態でメモリは限られているのでチェックですね.

http://schedule.gdconf.com/session/efficient-texture-streaming-in-titanfall-2

‘Ghost Recon Wildlands’: Terrain Tools and Technology

ちょうどGDC会期中に近い時期に発売ですが,オープンワールドの技術ということでチェックですね.

http://schedule.gdconf.com/session/ghost-recon-wildlands-terrain-tools-and-technology

GPU-Based Run-Time Procedural Placement in ‘Horizon: Zero Dawn’

これも近いうちに出るタイトルですが,Horizon : Zero Dawnって植物とか画面の密度感あるなということでチェックです.

http://schedule.gdconf.com/session/gpu-based-run-time-procedural-placement-in-horizon-zero-dawn

Rendering Low LOD Cars at Lightning Speed in ‘Forza Motorsport 6’

http://schedule.gdconf.com/session/rendering-low-lod-cars-at-lightning-speed-in-forza-motorsport-6

Shoot for the Sky: The Ambitious HDR Time-Lapse Skies of ‘Forza Horizon 3’

http://schedule.gdconf.com/session/shoot-for-the-sky-the-ambitious-hdr-time-lapse-skies-of-forza-horizon-3

Film

ゲームではなく映画や映像系の事例.このタイプのセッションはVaultで公開されないし,撮影禁止が多いので現地で聴く意義が高いですね.

Realtime Rendering for Feature Film: Rogue One a Case Study

ローグワンのケーススタディですが,リアルタイムレンダリングというのが気になりますね.やっぱりイテレーションが大事ですので.たぶん,録画されず現地でしか聴けないセッションな気がします.

http://schedule.gdconf.com/session/realtime-rendering-for-feature-film-rogue-one-a-case-study

グラフィックステクニック

Geometry Caching Optimizations

ゲーム開発でもジオメトリキャッシュは活用されてきていますのでチェック.

http://schedule.gdconf.com/session/geometry-caching-optimizations

PBR Diffuse Lighting for GGX+Smith Microsurfaces

今までSpecularの話が多かったですが,Diffuseということで.

http://schedule.gdconf.com/session/pbr-diffuse-lighting-for-ggxsmith-microsurfaces

Subdiv for the PlayStation®4 (Presented by Sony Interactive Entertainment America)

限定的でもSubdivはそろそろゲームで使用できるのか?というのは気になっています.

http://schedule.gdconf.com/session/subdiv-for-the-playstation4-presented-by-sony-interactive-entertainment-america

Advanced Graphics Tech

Advanced Graphics Techのセッションシリーズは基本的にほとんど出るとは思います.

Direct3D12やVulkanネタの最新技術ですね.

Advanced Graphics Tech: “Async Compute: Deep Dive” & “Raster Ordered Views and Conservative Rasterization”

NVIDIAはPascalからAsync Compute対応しましたが,先行するAMDに比べて効果のほど,最適化のポイントがよくわかってないので気になりますね.あとRaster Ordered Viewsはできることはわかってますが,使えるのかいまいちわからん部分がありますね.活用事例が少なくて.

http://schedule.gdconf.com/session/advanced-graphics-tech-async-compute-deep-dive-raster-ordered-views-and-conservative-rasterization

Advanced Graphics Tech: “Cinematic Depth of Field” & “Advanced Particle Simulation in Compute”

http://schedule.gdconf.com/session/advanced-graphics-tech-cinematic-depth-of-field-advanced-particle-simulation-in-compute

Advanced Graphics Tech: “D3D12 and Vulkan Done Right” & “Wave Programming in D3D12 and Vulkan”

Waveプログラミングは今年のグラフィックスAPIのアップデートの大きなトピックなのでチェックですね.

http://schedule.gdconf.com/session/advanced-graphics-tech-d3d12-and-vulkan-done-right-wave-programming-in-d3d12-and-vulkan

Advanced Graphics Tech: Moving to DirectX 12: Lessons Learned

まだまだDirect3D11で,ってところは多いでしょうし移行中って多いでしょうからチェックですね.

http://schedule.gdconf.com/session/advanced-graphics-tech-moving-to-directx-12-lessons-learned

AMD

Advanced Shader Programming on GCN (Presented by AMD)

このセッションは,Vegaの世代のAMD GPUの話なので次のAMDのアーキテクチャ向けの業務やる人はチェックですね.あと,Wave level operationもHLSL 6.0の話題なのでチェック.

http://schedule.gdconf.com/session/advanced-shader-programming-on-gcn-presented-by-amd

Explicit DirectX 12 Multi GPU Rendering (Presented by AMD)

マルチGPUを相手にする機会はあまりないんですが,個人的にはGPUが分散した状態で1つのアプリケーションのレンダリングをやるということ自体は興味があります.

http://schedule.gdconf.com/session/explicit-directx-12-multi-gpu-rendering-presented-by-amd

Radeon ProRender and Radeon Rays in a Gaming rendering workflow (Presented by AMD)

こうしたトピックはゲーム向けじゃなさそうなのですが”Gaming rendering workflow”ということが気になりますね.

http://schedule.gdconf.com/session/radeon-prorender-and-radeon-rays-in-a-gaming-rendering-workflow-presented-by-amd

Real-Time Finite Element Method (FEM) and TressFX 4.0 (Presented by AMD)

AMDの髪向けライブラリのTressFXとリアルタイム有限要素法のセッション.

http://schedule.gdconf.com/session/real-time-finite-element-method-fem-and-tressfx-40-presented-by-amd

D3D12 & Vulkan: Lessons Learned

入門記事ですがチェックですね.

http://schedule.gdconf.com/session/d3d12-vulkan-lessons-learned

DirectX 12 Case Studies (Presented by NVIDIA)

http://schedule.gdconf.com/session/directx-12-case-studies-presented-by-nvidia

Frostbite

Frositteの関連セッションは数があるので,1つのジャンルでいいかと思います.UnityやUE4と違いFrostbiteはEA DICEが中心に開発して,EAの傘下スタジオで使われるインハウスエンジンなのでインハウスで大規模タイトルをやってるところの励みになりますね.

4K Checkerboard in ‘Battlefield 1’ and ‘Mass Effect Andromeda’

昨年末から家庭用も徐々に4K対応が必要になってきたわけですが,GPUのそのまま解像度を上げる…というのはなかなか大変なのでレンダリングの工夫がいるわけですが,その中でCheckerboardレンダリングは流行っています.

もとは,GDC 2016のRainbow SIx SiegeのこれはFrostbiteでの実装事例ですね.

http://schedule.gdconf.com/session/4k-checkerboard-in-battlefield-1-and-mass-effect-andromeda

FrameGraph: Extensible Rendering Architecture in Frostbite

個人的に注目度高いのですが,FrostGraphというレンダリングの拡張の仕組みの話ですね.グラフベースでレンダリングパイプライン構築できれば…と思う人は多いですよね.

http://schedule.gdconf.com/session/framegraph-extensible-rendering-architecture-in-frostbite

High Dynamic Range Color Grading and Display in Frostbite

昨年からHDR TV(BT.2020)対応始まりましたが,Frostbiteの実装事例ですね.

http://schedule.gdconf.com/session/high-dynamic-range-color-grading-and-display-in-frostbite

Microsoft

D3D12 Performance Tuning and Debugging with PIX and GPU Validation (Presented by Microsoft)

先日,Windows 10向けのPIX出ましたがそのセッションですね.

http://schedule.gdconf.com/session/d3d12-performance-tuning-and-debugging-with-pix-and-gpu-validation-presented-by-microsoft

Game Mode and the Evolution of Cross-Platform UWP Game Development (Presented by Microsoft)

Windows 10のCreator UpdateのGame ModeとUWPの話のようですね.

http://schedule.gdconf.com/session/game-mode-and-the-evolution-of-cross-platform-uwp-game-development-presented-by-microsoft

Windows Holographic Rendering: One SDK to target VR and AR ecosystems (Presented by Microsoft)

Windows Holographicsの開発セッション.VRとARのSDKを1つの統合したもので提供するようですね.GDC 2017の中でも注目度が高いのではないかと思います.

http://schedule.gdconf.com/session/windows-holographic-rendering-one-sdk-to-target-vr-and-ar-ecosystems-presented-by-microsoft

NVIDIA

D3D Async Compute for Physics: Bullets, Bandages, and Blood (Presented by NVIDIA)

ほかのセッションのところでも書いてますが,Pascal世代のGeForcedでのAsync Computeの活用方法はちゃんと聞いておきたいですね.

http://schedule.gdconf.com/session/d3d-async-compute-for-physics-bullets-bandages-and-blood-presented-by-nvidia

NVIDIA Vulkan Update (Presented by NVIDIA)

VK_NVX_device_generated_commandsはAPIの標準になってほしい拡張ですね.

http://schedule.gdconf.com/session/nvidia-vulkan-update-presented-by-nvidia

Photogrammetry for Games: Art, Technology and Pipeline Integration for Amazing Worlds (Presented by NVIDIA)

NVIDIAのセッションというのが驚きましたが,フォトグラメトリーはデータ作成として一般化してきましたね.

http://schedule.gdconf.com/session/photogrammetry-for-games-art-technology-and-pipeline-integration-for-amazing-worlds-presented-by-nvidia

Real-Time Rendering Advances from NVIDIA Research (Presented by NVIDIA)

NVIDIA Reserchの最近の研究トピックが1セッションでいろいろと聞けるのはよさそうですね.

http://schedule.gdconf.com/session/real-time-rendering-advances-from-nvidia-research-presented-by-nvidia

Unity

The Future of Rendering in Unity (Presented by Unity Technologies)

Unityの将来のレンダリングの話ですね.セッションのスピーカーがTBDですが,先日移籍したNatalya Tatarchuk氏でしょうか?

http://schedule.gdconf.com/session/the-future-of-rendering-in-unity-presented-by-unity-technologies

Unreal Engine 4

Stylized Character Creation in UE4 Mobile Games

モバイルでやるということが気になりますね.

http://schedule.gdconf.com/session/stylized-character-creation-in-ue4-mobile-games

マルチGPUの話 Direct3D12とOpenGLのAlternate Frame Renderingの話

先日のマルチGPUの話の続きみたいな話になりますが,MicrosoftのDirectX blogで”Rise of the Tomb Raider”のマルチGPUの事例が紹介されていました.

Rise of the Tomb Raider, Explicit DirectX 12 MultiGPU, and a peek into the future
https://blogs.msdn.microsoft.com/directx/2016/07/08/rise-of-the-tomb-raider-explicit-directx-12-multigpu-and-a-peek-into-the-future/

“Rise of the Tomb Raider”ではマルチGPU向けの実装をしているようで,Direct3D11との比較などが記事では紹介されていますが,実装的にはその次の記事にあるような技術をつかったようです.

Explicit DirectX 12 MultiGPU, the Affinity Layer helper library, and your game
https://blogs.msdn.microsoft.com/directx/2016/07/13/explicit-directx-12-multigpu-the-affinity-layer-helper-library-and-your-game/

Microsoftではこの仕組みをAffinity Layerと呼ぶとのことで,そのライブラリをGitHubで公開しています.

The D3D12 MultiGPU Starter Library
https://github.com/Microsoft/DirectX-Graphics-Samples/tree/master/Libraries/D3DX12AffinityLayer

このライブラリでは,Alternate Frame Rendering (AFR)を簡単に実装できるもののようです.AFR自体は用語的にはSLIが登場したぐらいからあった用語で,複数のGPUでGPUごとにレンダリングするフレームを分担することでフレームレートを出す手法です.日本語でいうと「交互フレームレンダリング」みたいな感じでしょうか?

この技術では,1つ目のGPUがレンダリングを開始して50%ぐらいのところに来たら次のフレームのレンダリングを次のGPUで行うというような実装のようです(奇数フレームはGPU0,偶数フレームはGPU1みたいな感じで).

この技術はSLI/Crossfireなどで専用のブリッジケーブルを通じて、複数のGPUのVRAM上にゲームのVRAMを高速にミラーリングすることで実現します.従来は,こうした技術の使用にはGPUベンダーのSDKを組み込んで実装していましたが,Direct3D12ではAPI標準機能で実装できるようになったようですね.

マルチGPUの活用方法はあるとは思いますが,AFRはあまり実装者にとって手間が少ないので商業アプリケーションではマルチGPU対応としては工数がつくなくて好まれる手法とは思います.

一方,VulkanやOpenGLはどうするの?というと情報として把握できていないのですが,OpenGL RegistryにNVIDIAがちょうどタイムリーな拡張を公開していました.これはGPUベンダーの実装した手法ではありますが,ベンダー拡張からARB拡張などへ昇格していくと標準的に使えるテクニックになるかもしれませんね.

NV_gpu_multicast
https://www.opengl.org/registry/specs/NV/gpu_multicast.txt

AMD Compressonator v2.3リリース ASTC,ETC2 サポート

AMDのテクスチャ圧縮ツールCompressonatorのv2.3がリリースになっています.

Compressonator v2.3 Release Delivers ASTC, ETC2 Codec Support and GPU Rendered Image Views
http://gpuopen.com/compressonator-v2-3-release-delivers/

Githubリポジトリ
https://github.com/GPUOpen-Tools/Compressonator

今回のアップデートでASTC,ETC2がサポートになっています.まだまだこの2つのフォーマットをサポートするツールは少ないのとソース,ライブラリが公開されているので自分たちのツール環境へ組み込みやすいのがいいですね.