フォト

Google AdSense

  • AdSense
無料ブログはココログ

« 2016年10月 | トップページ | 2016年12月 »

2016.11.30

VK_NVX_device_generated_commands拡張がきた

NVIDIAのR376.09ドライバでVulkanの拡張のVK_NVX_device_generated_commandsきたのね。

NVIDIA R376.09 WHQL GeForce Graphics Driver Released
http://www.geeks3d.com/20161128/nvidia-r376-09-whql-geforce-graphics-driver-released/

前にShader.jpで書いたけどもパフォーマンス向上があるなら強力な拡張で、ほかのGPUベンダーも追従してグラフィックスAPI標準の機能が出てくるとレンダリングエンジンとか作ってるような人には影響大きそうですね。設計を直すことにはなるとは思いますが、標準化してほしいところですね。

NVIDIAのVulkan Device-Generated Commands拡張
http://www.shader.jp/?p=1887

なお、実装に関するドキュメントは下記ですね。

https://github.com/nvpro-samples/gl_vk_threaded_cadscene/blob/master/doc/vulkan_nvxdevicegenerated.md

2016.11.29

Visibility Bufferの元論文とHLSLコード

自分ではかなり昔にブックマークしてたんですが、最近になって実装例が増えてきて話題になったのですが、このblogには情報まとめてメモってなかったので。

The Visibility Buffer: A Cache-Friendly Approach to Deferred Shading
http://jcgt.org/published/0002/02/04/

以前書いた話題だとGDC Europe 2016でWolfgang Engel氏が"The filtered and Culled Visibility Buffer"の話なんかですね。

http://masafumi.cocolog-nifty.com/masafumis_diary/2016/08/visibility-buff.html

そのほかにEidosのDeferred+: Next-Gen Culling and Rendering for Dawn Engineの記事。

Deferred+: Next-Gen Culling and Rendering for Dawn Engine
https://community.eidosmontreal.com/blog/next-gen-dawn-engine

それから下記の記事なども。

Bindless Texturing for Deferred Rendering and Decals
https://mynameismjp.wordpress.com/2016/03/25/bindless-texturing-for-deferred-rendering-and-decals/amp/

ハイエンド向け以外にメモリ帯域のきつい環境ではVisibility Bufferをベースに考えるのが良いのかもしれないですね。

2016.11.28

Marmoset Toolbag 3からUnityへ

とりあえず、Marmoset Toolbag 3からUnityへサンプルを持っていってみた。

2016-11-28 (2)

2016-11-28 (3)

Unity側ではまずはオブジェクトをStaticにしてEnlighten有効にしたけどもリフレクション周りはデフォルトではなんともならないので、SSLRかReflection Probe適用する必要がありますねぇ。とりあえず、Post-processing Stackですなぁ。

マテリアルはStandard (Specular Setup)になってるのはよいですね。Post-processing Stackして見た目を見たらUE4も試してみようかな。

Marmoset Toolbag 3からUE4に持っていくには?

Marmoset Toolbag 3をSteamで購入したのですが、Unityに関してはFile -> ExportでUnity Packageへエクスポートができたんですが、UE4はということでいろいろと見ていたらHelpにGet Unreal Pluginがありました。

http://store.steampowered.com/app/550060/

そうしたら下記のドキュメントに飛ばされました。

HOW DO I EXPORT TO UNREAL ENGINE?
https://www.marmoset.co/support/#unrealexport

あ~、なるほどUE4に関してはエンジン側にToolbag 3のデータを読めるプラグインを用意してるのね。最終的にはマーケットプレイスでプラグインを出してくれるようですが、現状はここからダウンロードなのね。

これは試してみないといけませんね。

GDC 2017のセッション:FrameGraph: Extensible Rendering Architecture in Frostbite

GDC 2017のセッションがじわじわと公開になってきていますが、FrameGraph: Extensible Rendering Architecture in Frostbiteがちょっと気になりますね。

FrameGraph: Extensible Rendering Architecture in Frostbite
http://schedule.gdconf.com/session/framegraph-extensible-rendering-architecture-in-frostbite

EAは最近はかなりFrostbiteに開発環境を統一できてきて、Battlefieldシリーズ以外では前世代はUE 3が多かったBioware(Dragon AgeとかMass Effectsとか)なんかが移行できて、FIFAとかスポーツタイトルはFrostbiteと別のエンジンでしたが、最近はFrostbiteに代わりましたね。

そうした幅広いタイトルをサポートするエンジンがどうやって各タイトルごとにレンダリングの構造変えてるかは気になるところですね。そのあたりの話はあんまり今まで語られてなかった気がするのでチェックしたいところですね。

Marmoset Toolbag 3が出た

そういや、Marmoset Toolbag 3が出ましたね。

https://www.marmoset.co/toolbag/

ゲームエンジン以外の選択肢でリアルタイムレンダリングでPBRな絵で3Dデータを出せることで重宝してるという話はよく聞きますが、今回からアニメーション対応(Alembicなどもやゲームエンジンへの出力対応など便利な方向に行ってるので、気にはなるところですね。

Steamでの販売ページ
http://store.steampowered.com/app/550060/?snr=1_5_9__205


Introducing: Marmoset Toolbag 3 from Marmoset Co on Vimeo.

2016.11.20

HLSLccを利用できるようにするまでメモ

HLSLccを利用してみようとソースを取得してみたのですが、VS 2015でビルドエラーが出てそこを修正してみたのですが、そこは#include で通りました。

TranslateHLSLFromFile内部でクラッシュしてたんですが、Issue出てる内容でした。

TranslateHLSLFromFile() fread issue
https://github.com/Unity-Technologies/HLSLcc/issues/5

まぁ、GithubのNoteにも TranslateHLSLFromMem() がエントリーポイントだとあるので、ファイルロードは自分で書いてTranslateHLSLFromMemしましたが、これも内部でvectorの範囲外アクセスみたいなところが出て、そこも修正して通るようになりました。

そのあとGLSLに変換できるところまで行ったのですが、Unifoirm blockの書き方がglslangのglslValidatorに通らないのでTranslateHLSLFromMemの第2引数のflagsにHLSLCC_FLAG_UNIFORM_BUFFER_OBJECT 入れて無事にglsangで通りました(警告は出るけど)。

このあたりまとめるかGithubにコマンドラインツール化して出してしまうかしてしまいたいところですね。

2016.11.17

製品名Visual Studio 2017になったのか

Visual Studio 2017って製品名でRCになったのか。

Visual Studio Development – Productivity Enhancements in Visual Studio 2017 RC
https://msdn.microsoft.com/magazine/mt790181

2016.11.16

HLSLccのオープンソース化について

Unity TechnologiesがHLSLのバイトコードをGLSLやMetal Shading Languageに変換するHLSLccをオープンソース化
http://www.shader.jp/?p=1891

とりあえず、Shader.jpに書いておきました。

わりとゲームエンジン業界では直接GLSL書きたくないということが結構多いですね。なので、自動的にコードが作れれば...というのはいろいろと試みられていますね。

HLSLもわりと言語仕様怪しいところがあるのですが、わりとGLSLに比べて便利なのが#includeの対応ですね。あと、エントリーポイントの関数がmainに縛られない部分とかマクロ周りとか。

前身のHLSLCrossCompilerの仕様経験はあるんですが、Vulkanへの対応がダメなんですよね。Metal Shading Languageに関してはSPIRV-Crossでなんとかなるところはあるんですが。

https://github.com/KhronosGroup/SPIRV-Cross

あと、Unityで使われてるということで、生成したGLSLのコードに関してはあまり人間が手を入れなくても使えるということを祈りつつ、ちょっと試してみたいところですね。

2016.11.15

NVIDIAのVulkan Device-Generated Commands拡張について書いた

数日前にTwitterで話題にしていたネタですが、ちょっと書いておきました。

NVIDIAのVulkan Device-Generated Commands拡張
http://www.shader.jp/?p=1887

グラフィックスAPIでの標準機能に昇格すると従来のAPIに比べてさらなる効率化などを考えられるかもしれないですね。

2016.11.08

YoutubeでHDR動画再生サポート

YoutubeでHDR動画再生サポートがはじまったみたいですね。

True colors: adding support for HDR videos on YouTube
https://youtube.googleblog.com/2016/11/true-colors-adding-support-for-hdr.html

現状、PCのブラウザなどではHDRで再生できないようで、 Chromecast Ultraが必要っぽいですね。

とりあえず、下記にアップされてるHDR動画の再生リストがありましたので、 Chromecast Ultraがあってテレビのある方は。

HDR Launch Playlist
https://www.youtube.com/playlist?list=PLyqf6gJt7KuGArjMwHmgprtDeY8WDa8YX

自宅用には4K HDR TVはそろそろ買わないといけないかなと思いつつもなかなかいつ買うかが難しいところですね。

2016.11.07

Steam Dev Days 2016のセッション動画が公開に

Steamの開発者向けのイベントがSteam Dev Days 2016がアメリカで10/12、10/13にありましたが、その動画が公開になったみたいですね。

Steam Dev Days 2016
http://steamcommunity.com/devdays

今回はやはりVRに関する話題が多いですね。UnityやUE4を使用しているVR開発者向けのセッションなどもありますが、結構なボリュームですね。

VRに限らないSteam向けの開発やリリースに関するのセッションなどもあります。

動画は下記から視聴できます。

Steamで視聴
http://store.steampowered.com/app/534600/

Youtubeで視聴
https://www.youtube.com/playlist?list=PLckFgM6dUP2ihiMeKHoyIdHvhRSyqwQsp

Vulkan本がもうすぐ出る

Vulkan Programming Guide: The Official Guide to Learning Vulkanが、もう出るみたいですね。

Vulkan Programming Guide now shippingのエントリ
https://www.khronos.org/

アメリカのAmazonでは紙の書籍が予約じゃなくなってるのでKindle版の発売日は今週末なので、チェックですね。

2016.11.02

Vulkan開発が話題だけど

そういえば、Vulkan and OpenGL/OpenGL ES Updates - SIGGRAPH 2016にUnreal Engine 4のVulkan対応やDOOMのVulkan対応の話がありましたが、どうもメモってなかったので乗っけておきます。スライドが探しても見つからないのでセッションの長い動画から始まる部分をリンクしておきます。

Porting Unreal Engine 4 to Vullkan
https://youtu.be/CsHMiEQgrLA?t=26m36s

Porting DOOM to Vulkan
https://www.youtube.com/watch?v=CsHMiEQgrLA

UE4はAndroid(この時点ではGalaxy S7向け)でDOOMはWindows向けですね。

2016.11.01

MicrosoftがglTF採用?

Windows 10で3Dデータサポートの話がいろいろとあるみたいですが、glTFなんかも検討してるんですね。

Bringing 3D to everyone through open standards
https://blogs.windows.com/buildingapps/2016/10/28/bringing-3d-to-everyone-through-open-standards/

glTFはKhronos GroupのJSONベースのモデルデータフォーマットですけど、速度はおいておいて扱いやすいフォーマットではあるでしょうね。

https://github.com/KhronosGroup/glTF

今のところ現在のゲーム開発における"PBR"のサポートはないのですが、Microsoftのblogで紹介されていますが、Githubでは議論されているようですね。 glTF Nextラベルがついてるものはチェックですね。

https://github.com/KhronosGroup/glTF/issues?q=is%3Aissue+is%3Aopen+label%3APBR

« 2016年10月 | トップページ | 2016年12月 »