SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
The SGGX Microflake Distribution
実装
株式会社セガゲームス
今給黎 隆
• 主にビデオゲームの開発情報の共有
• 参加費:学生500円、一般2000円
• http://kyushucedec.jp/
The SGGX Microflake Distribution
• SIGGRAPH 2015
– Eric Heitz (Karlsruhe Institute of Technology, NVIDIA)
– Jonathan Dupuy (Univ. Montr´eal; LIRIS, Univ. Lyon 1)
– Cyril Crassin (NVIDIA)
– Carsten Dachsbacher (Karlsruhe Institute of
Technology)
• 論文の日本語訳
– https://github.com/imagire/SGGX_jp
モチベーション
• ボリュームデータの物理ベースレンダリング
– 3角形ポリゴンの集合では表しにくいデータの増大
• 木、服、もくもく
– データ量が増大しやすい
• データの削減
– 色
– 濃度
– 反射分布
今回の結果
https://github.com/imagire/sggx_impl
SGGX概要
• 前提としての表面の反射理論
– マイクロファセット理論
• 金属等は様々な方向を向いた平面の集まりと捉えられる
– アルべド、法線分布、屈折率、拡散/鏡面反射割合
GGX
)()(,)()( iiiiooipo QdLfL   
)()()1()( oi
spec
poi
diff
poip fmfmf  



)(
)( oi
oi
diff
pf


oi
oi
spec
p
nn
GDF
f


,,4
)( 
 hFFF o ,1)1( 00 
  2
22
2
11, 



hn
D
)()( 0 iGGXGGX GGG 
  222
,1,
,2
)(



nn
n
GGGX


)),(,0max(, 
:Schlick近似のフレネル
(h:ハーフベクトル, F0:正面反射率)
:法線分布関数 (α:粗さ)
拡散反射:
鏡面反射:
こんな近似項を
使うのがGGX
(m:金属度合い)
ボリュームレンダリング
• 放射伝達方程式
SGGX
• ボリュームレンダリングする際に、ボリューム
データの微視的な法線分布率を楕円体の
データで表現
– 投影面積(散乱割合)
– 位相関数
• GGXを裏面にも対称化:対称GGX=SGGX
– 散乱には「拡散反射+鏡面反射」を適応
実装方法
• パストレーサー「smallpt: Global Illumination in
99 lines of C++」を拡張
– http://www.kevinbeason.com/smallpt/
• パスの衝突検知の際に、検知したレイがボ
リュームデータのAABB
と交差するか調べ、
交差したら、ボリューム
データの寄与を付与
– ボリュームデータ分解能
から、各ボクセルへの
交差位置を計算
– 確率的に入射レイの追加
関与媒質の寄与の計算
• AABBの交差判定ののち
ボリュームデータの各
グリッドとの交点を算出
• 乱数を用いて2次レイを
確率的に生成
0L
l
lt
i
)( oL 
 
)())(
)(1(
4
)( 0
ioi
S
oi
Dslt
l
o
Lfrm
frm
lt
e
LeL
s
s












散乱確率
実装方法
• 新たに考えなくてはならない部分
はほとんどない
– The SGGX Microflake Distribution
Supplemental Material
• 非常に多くの係数がコード付きで掲載
– https://drive.google.com/file/d/0BzvWIdpUp
Rx_djVyMG9jMnltdTg/view?usp=sharing
– GitHub (zhangwengame/SGGX-
Plugin-for-Mitsuba)
• 動くコードが存在(今回は未参照)
  )())()(1(
4
)( 0
ioi
s
oi
Dslt
l
o
Lfrmfrm
lt
e
LeL
s
s










散乱確率
今回の結果
• できたこと
– SGGXデータが与えられた際のパストレーシング
– 密度・アルべドのデータとは異なる分解能に対応
• できないこと
– 他のデータからのインポート
σy
2=σz
2=0.001 σx
2=σz
2=0.001
σ z
2=0.001σ x
2=0.0001
σx 1 1 ff ff ff ff 1 ff 80 80 ff ff ff ff 80 ff
σy 1 ff 1 ff ff 1 ff ff 80 ff 80 ff ff 80 ff ff
σz ff 1 1 ff 1 ff ff ff ff 80 80 ff 80 ff ff ff
空間的変化のある散乱係数
濃度分布が変化する場合
SGGXについて
• Pros
– 高速:拡散、鏡面反射方向を決め、他の確率分
布関数等の計算もシンプルなので計算は速い
• Cons
– 拡散+鏡面反射の分離のモデルを仮定している
が正当性は不明
– 反射特性よりも濃度情報によって形状は形作ら
れるので、濃度情報の圧縮の研究は今後も必要
Future works
• 拡散反射+鏡面反射で当てはまらないモデ
ルへの適応の調査
• アルべド・密度に対するデータ圧縮
• リアルタイム対応
– 形状が楕円体を使っている点に事前計算しやす
い部分があるかもしれない
ありがとうございました
• 本家資料
– 論文
• https://drive.google.com/file/d/0BzvWIdpUpRx_dXJIMk9rdEdrd00/view?usp=sharing
– 補足資料
• https://drive.google.com/file/d/0BzvWIdpUpRx_djVyMG9jMnltdTg/view?usp=sharing
– Mitsubaレンダラ用プラグインソースコード
• https://github.com/zhangwengame/SGGX-Plugin-for-Mitsuba
– 登壇スライド
• https://drive.google.com/file/d/0BzvWIdpUpRx_SDZnYWJYRDg3VWM/view
• 今回向けの資料
– 前回のセッション資料
• http://www.slideshare.net/imagire/sggx
– 論文の日本語訳
• https://github.com/imagire/SGGX_jp
– 実装ソースコード
• https://github.com/imagire/sggx_impl

Mais conteúdo relacionado

Destaque

ゲーム作りから導くスクラムマネージャー
ゲーム作りから導くスクラムマネージャーゲーム作りから導くスクラムマネージャー
ゲーム作りから導くスクラムマネージャー
Takashi Imagire
 
@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門
Takashi Imagire
 

Destaque (17)

ゲームテストへの新しいアプローチ
 ゲームテストへの新しいアプローチ ゲームテストへの新しいアプローチ
ゲームテストへの新しいアプローチ
 
GDC 2015 でのハイエンドグラフィックス
GDC 2015 でのハイエンドグラフィックスGDC 2015 でのハイエンドグラフィックス
GDC 2015 でのハイエンドグラフィックス
 
(人狼知能合宿)ビデオゲームへの人狼知能の応用について
 (人狼知能合宿)ビデオゲームへの人狼知能の応用について (人狼知能合宿)ビデオゲームへの人狼知能の応用について
(人狼知能合宿)ビデオゲームへの人狼知能の応用について
 
卒業制作でのチームゲーム開発におけるアジャイル手法の段階的適用に関する事例
卒業制作でのチームゲーム開発におけるアジャイル手法の段階的適用に関する事例卒業制作でのチームゲーム開発におけるアジャイル手法の段階的適用に関する事例
卒業制作でのチームゲーム開発におけるアジャイル手法の段階的適用に関する事例
 
ゲームエンジンの歴史概要
ゲームエンジンの歴史概要ゲームエンジンの歴史概要
ゲームエンジンの歴史概要
 
ゲーム作りから導くスクラムマネージャー
ゲーム作りから導くスクラムマネージャーゲーム作りから導くスクラムマネージャー
ゲーム作りから導くスクラムマネージャー
 
LeSS Study [2015/Dec./16] 資料(公開版)
LeSS Study [2015/Dec./16] 資料(公開版)LeSS Study [2015/Dec./16] 資料(公開版)
LeSS Study [2015/Dec./16] 資料(公開版)
 
実践的ふりかえり (SAPPORO CEDEC 2014)
実践的ふりかえり (SAPPORO CEDEC 2014)実践的ふりかえり (SAPPORO CEDEC 2014)
実践的ふりかえり (SAPPORO CEDEC 2014)
 
くじびきイテレーション for アジャイルサムライ横浜道場
くじびきイテレーション for アジャイルサムライ横浜道場くじびきイテレーション for アジャイルサムライ横浜道場
くじびきイテレーション for アジャイルサムライ横浜道場
 
くじびきイテレーション
くじびきイテレーションくじびきイテレーション
くじびきイテレーション
 
TDD Boot Camp Tokyo for C++ 2014-01 補講
TDD Boot Camp Tokyo for C++ 2014-01 補講TDD Boot Camp Tokyo for C++ 2014-01 補講
TDD Boot Camp Tokyo for C++ 2014-01 補講
 
課題探検迷子に捧ぐゲーム流価値の創造術 (公開版)
課題探検迷子に捧ぐゲーム流価値の創造術 (公開版)課題探検迷子に捧ぐゲーム流価値の創造術 (公開版)
課題探検迷子に捧ぐゲーム流価値の創造術 (公開版)
 
無料な継続的出版システム ~ t-ceremony ~
無料な継続的出版システム ~ t-ceremony ~無料な継続的出版システム ~ t-ceremony ~
無料な継続的出版システム ~ t-ceremony ~
 
@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門
 
すべての優先度が1の時の優先順位の決め方
すべての優先度が1の時の優先順位の決め方すべての優先度が1の時の優先順位の決め方
すべての優先度が1の時の優先順位の決め方
 
次の世代のインタラクティブレンダリング5つの挑戦と10の滅ぶべき技術
次の世代のインタラクティブレンダリング5つの挑戦と10の滅ぶべき技術 次の世代のインタラクティブレンダリング5つの挑戦と10の滅ぶべき技術
次の世代のインタラクティブレンダリング5つの挑戦と10の滅ぶべき技術
 
TDD Boot Camp Tokyo for c++ 2014-01 デモ用資料
TDD Boot Camp Tokyo for c++ 2014-01 デモ用資料TDD Boot Camp Tokyo for c++ 2014-01 デモ用資料
TDD Boot Camp Tokyo for c++ 2014-01 デモ用資料
 

Semelhante a The SGGX Microflake Distribution 実装

Semelhante a The SGGX Microflake Distribution 実装 (17)

【DL輪読会】StyleGAN-T: Unlocking the Power of GANs for Fast Large-Scale Text-to-I...
【DL輪読会】StyleGAN-T: Unlocking the Power of GANs for Fast Large-Scale Text-to-I...【DL輪読会】StyleGAN-T: Unlocking the Power of GANs for Fast Large-Scale Text-to-I...
【DL輪読会】StyleGAN-T: Unlocking the Power of GANs for Fast Large-Scale Text-to-I...
 
DSF2018講演スライド
DSF2018講演スライドDSF2018講演スライド
DSF2018講演スライド
 
分散学習のあれこれ~データパラレルからモデルパラレルまで~
分散学習のあれこれ~データパラレルからモデルパラレルまで~分散学習のあれこれ~データパラレルからモデルパラレルまで~
分散学習のあれこれ~データパラレルからモデルパラレルまで~
 
CEDEC 2007 ゲーム開発者向け最新技術論文の解説・実装講座
CEDEC 2007 ゲーム開発者向け最新技術論文の解説・実装講座CEDEC 2007 ゲーム開発者向け最新技術論文の解説・実装講座
CEDEC 2007 ゲーム開発者向け最新技術論文の解説・実装講座
 
SakataMoriLab GNN勉強会第一回資料
SakataMoriLab GNN勉強会第一回資料SakataMoriLab GNN勉強会第一回資料
SakataMoriLab GNN勉強会第一回資料
 
OSC2017Hokkaido
OSC2017HokkaidoOSC2017Hokkaido
OSC2017Hokkaido
 
ACRiウェビナー_ChipTip Technology様ご講演資料
ACRiウェビナー_ChipTip Technology様ご講演資料ACRiウェビナー_ChipTip Technology様ご講演資料
ACRiウェビナー_ChipTip Technology様ご講演資料
 
GPU on OpenStack 〜GPUインターナルクラウドのベストプラクティス
GPU on OpenStack 〜GPUインターナルクラウドのベストプラクティスGPU on OpenStack 〜GPUインターナルクラウドのベストプラクティス
GPU on OpenStack 〜GPUインターナルクラウドのベストプラクティス
 
Playing Atari with Six Neurons
Playing Atari with Six NeuronsPlaying Atari with Six Neurons
Playing Atari with Six Neurons
 
グラフデータ分析 入門編
グラフデータ分析 入門編グラフデータ分析 入門編
グラフデータ分析 入門編
 
Globally and Locally Consistent Image Completion
Globally and Locally Consistent Image CompletionGlobally and Locally Consistent Image Completion
Globally and Locally Consistent Image Completion
 
デジタルバッジ研究の動向/ The Status of Research Trends in Digital Badges
デジタルバッジ研究の動向/ The Status of Research Trends in Digital Badgesデジタルバッジ研究の動向/ The Status of Research Trends in Digital Badges
デジタルバッジ研究の動向/ The Status of Research Trends in Digital Badges
 
ICCV2019 report
ICCV2019 reportICCV2019 report
ICCV2019 report
 
【CVPR 2020 メタサーベイ】Neural Generative Models
【CVPR 2020 メタサーベイ】Neural Generative Models【CVPR 2020 メタサーベイ】Neural Generative Models
【CVPR 2020 メタサーベイ】Neural Generative Models
 
SciREX「ナショナルイノベーションシステムに係る定量データとその分析手法」WSシリーズ第6回 「ネットワーク分析の方法+WSシリーズまとめ」
SciREX「ナショナルイノベーションシステムに係る定量データとその分析手法」WSシリーズ第6回「ネットワーク分析の方法+WSシリーズまとめ」 SciREX「ナショナルイノベーションシステムに係る定量データとその分析手法」WSシリーズ第6回「ネットワーク分析の方法+WSシリーズまとめ」
SciREX「ナショナルイノベーションシステムに係る定量データとその分析手法」WSシリーズ第6回 「ネットワーク分析の方法+WSシリーズまとめ」
 
FPGA, AI, エッジコンピューティング
FPGA, AI, エッジコンピューティングFPGA, AI, エッジコンピューティング
FPGA, AI, エッジコンピューティング
 
関西Cvprml勉強会2017.9資料
関西Cvprml勉強会2017.9資料関西Cvprml勉強会2017.9資料
関西Cvprml勉強会2017.9資料
 

Mais de Takashi Imagire

スクラム道場.10 朝会 (Game Community Summit 2013)
スクラム道場.10 朝会 (Game Community Summit 2013)スクラム道場.10 朝会 (Game Community Summit 2013)
スクラム道場.10 朝会 (Game Community Summit 2013)
Takashi Imagire
 
第11回 scrum boot camp in NII ワークショップ
第11回 scrum boot camp in NII ワークショップ第11回 scrum boot camp in NII ワークショップ
第11回 scrum boot camp in NII ワークショップ
Takashi Imagire
 
好きなことをしようAction! pub
好きなことをしようAction! pub好きなことをしようAction! pub
好きなことをしようAction! pub
Takashi Imagire
 
CIBC workshop by imagire
CIBC workshop by imagireCIBC workshop by imagire
CIBC workshop by imagire
Takashi Imagire
 

Mais de Takashi Imagire (13)

『ゲームクリエイター育成会議 オフラインミーティングVol.1 「遊びと学びの研究者に聞く、ゲームデザイナーの育て方」』に参加するにあたって自分なりに考えたこと
『ゲームクリエイター育成会議 オフラインミーティングVol.1 「遊びと学びの研究者に聞く、ゲームデザイナーの育て方」』に参加するにあたって自分なりに考えたこと『ゲームクリエイター育成会議 オフラインミーティングVol.1 「遊びと学びの研究者に聞く、ゲームデザイナーの育て方」』に参加するにあたって自分なりに考えたこと
『ゲームクリエイター育成会議 オフラインミーティングVol.1 「遊びと学びの研究者に聞く、ゲームデザイナーの育て方」』に参加するにあたって自分なりに考えたこと
 
2件のHPG18 ショートペーパーの説明
2件のHPG18 ショートペーパーの説明2件のHPG18 ショートペーパーの説明
2件のHPG18 ショートペーパーの説明
 
コミケでのゲームエンジン2017
コミケでのゲームエンジン2017コミケでのゲームエンジン2017
コミケでのゲームエンジン2017
 
同人ゲーム開発におけるゲームエンジンの現状
同人ゲーム開発におけるゲームエンジンの現状同人ゲーム開発におけるゲームエンジンの現状
同人ゲーム開発におけるゲームエンジンの現状
 
Chroma blur (日本語での説明)
Chroma blur (日本語での説明)Chroma blur (日本語での説明)
Chroma blur (日本語での説明)
 
ソフトウェアだんどり
ソフトウェアだんどりソフトウェアだんどり
ソフトウェアだんどり
 
スクラム道場.10 朝会 (Game Community Summit 2013)
スクラム道場.10 朝会 (Game Community Summit 2013)スクラム道場.10 朝会 (Game Community Summit 2013)
スクラム道場.10 朝会 (Game Community Summit 2013)
 
第11回 scrum boot camp in NII ワークショップ
第11回 scrum boot camp in NII ワークショップ第11回 scrum boot camp in NII ワークショップ
第11回 scrum boot camp in NII ワークショップ
 
つくる○アジャイル
つくる○アジャイルつくる○アジャイル
つくる○アジャイル
 
好きなことをしようAction! pub
好きなことをしようAction! pub好きなことをしようAction! pub
好きなことをしようAction! pub
 
Cibc lecture imagire
Cibc lecture imagireCibc lecture imagire
Cibc lecture imagire
 
CIBC workshop by imagire
CIBC workshop by imagireCIBC workshop by imagire
CIBC workshop by imagire
 
CIBC 事前インストール
CIBC 事前インストールCIBC 事前インストール
CIBC 事前インストール
 

Último

Último (11)

論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 

The SGGX Microflake Distribution 実装