サウンドプログラマー観点の
GDC2018
スクウェア・エニックス サウンドプログラマー
西松優一
自己紹介
• 2010年からスクウェア・エニックスでサウンドプログラマーとして働く
• GDC2015登壇
• GDC2018で参加二回目
本日の概要
プログラマーがGDC行く意味って
本当にあるんですか?
サウンドプログラマーがGDC行く価値あるの?
• GDCのAudio Trackは、サウンドプログラマー向けのセッションが少ない……
• 三日間のAudioセッションの内、Programmingでもあるのはたったの3/36
• ※Session, Poster Session, Sponsored Session
• Roundtableも含めて漸く6/47
サウンドプログラマーがGDC行く価値あるの?
• 他のプログラミングセッションが充実している
• ツール関係やグラフィックス関係など
• サウンドデザイナーと一緒にミーティングすると、幅広い分野に対応できる
• サウンド技術者に沢山会える
Audio Programming Roundtable
https://twitter.com/JohnIsASound/status/976599754686607360
Audio Programming Roundtable
参加者分布
50%
40%
5%
5%
参加者(推定)
サウンドプログラマー サウンドデザイナー その他プログラマー 学生
Audio Programming Roundtable
• (えっ、ラウンドテーブル?
喋る必要があるのでは……?)
• そんなことはありません。
挙手式で、傍聴のみも可でした。
さぁ、次は
お前だ!
Audio Programming Roundtable
話題
• サウンドプログラミングを始めるにはどこから始めればいい?
みんなどうやったの?
• ここまで独学でサウンドプログラミング勉強したけど、
次に何に手を出すのがオススメ?
• サウンドデザイナーと仲良くなる(≒うまく仕事する)にはどうする?
• デバッグ自動化何かやってる?
• VR/ARなど、所謂XR関係で困ったことは?
• Ambisonicsって何?
• これからどんなサウンドプログラミング技術が注目される?
• 等々
Audio Programming Roundtable
話題
• サウンドプログラミングを始めるにはどこから始めればいい?
みんなどうやったの?
• MAX/MSPやpure dataなど、ビジュアルプログラミングから始める
• WWiseのAPI読もう
Audio Programming Roundtable
話題
• サウンドデザイナーと仲良くなる(≒うまく仕事する)にはどうする?
• 彼らの言葉をまず覚えよう
• ちゃんと話しに行こう
Audio Programming Roundtable
話題
• デバッグ自動化何かやってる?
• みんな難しい表情に
• フィルターなど、単純な演算の単体テスト
• 343では、音がチャンネル毎に出ているか出ていないかで
成否を判断するテストを行っていた
Audio Programming Roundtable
話題
• これからどんなサウンドプログラミング技術が注目される?
• やっぱり、遮蔽や回折を含む音響伝播全般
Making Good Tools for Making Great Audio
• 登壇者:
• Guy Somberg (Client Lead Programmer, Echtra Games)
• Tomas Neumann (Senior Software Engineer, Blizzard Entertainment)
Making Good Tools for Making Great Audio
クリエイティビティの公式
• Correctness + Efficiency = Creativity
Making Good Tools for Making Great Audio
Correctness
• 正確性
• ミスの確率を下げ、
その手戻りコストを削減する
• 自動化が判り易い例
Making Good Tools for Making Great Audio
Correctness: Overwatch Localization
台詞数
× 話す対象に因る場合分け(男性・女性・尊敬・嫌悪)
× 複数の言語
= 厖大な組み合わせ
・手作業を徹底的に減らしたい
Making Good Tools for Making Great Audio
Correctness: Audit Script
• FMODでの検証スクリプト
• JavaScript
• ルールを規定して、それを遵守しているか
• ひとつ150行ほど
• 10-15行のスクリプトで新しく作成できる
Making Good Tools for Making Great Audio
Efficiency
• 効率性
• 反復の労力を削減する
• 少ない労力で大きな変更を齎す
Making Good Tools for Making Great Audio
Efficiency: Overwatch Auditiva
• Wwiseのプロジェクトをビルドしてデータベースに反映するツール
• FastとStableの二つのユースケース
Making Good Tools for Making Great Audio
Efficiency: Bioshock2 Dialog Packager
• バンクを作る度にプロセスを立ち上げる必要があった
問題しかないツールの問題を迂回
• ボタン一つで完結するように
Making Good Tools for Making Great Audio
Creativity
• 安心と速度が余裕を齎し、
余裕が閃きを呼ぶ。
Making Good Tools for Making Great Audio
プログラマーとして気を付けたいこと
• ツールを作った後、「ハイ終わり」としな
い。
ちゃんとフォローアップしよう。
• デザイナーをよく観察して、
効率の悪い部分を探し当てよう。
Making Good Tools for Making Great Audio
デザイナーに知ってほしいこと
•“ALL THINGS ARE POSSIBLE!”
•不可能はない!
Making Good Tools for Making Great Audio
デザイナーに本当に知ってほしいこと
• “Bring me problems, not solutions”
(何をして欲しいかではなく、何で困っているかを教えてくれ)
グラフィック分野の話
• レイトレーシングを用いたレンダリングの話が、
GPUのスポンサーセッションを含めて多数見受けられた
• サウンドにも恩恵があるのでは
レイトレーシングによるAmbient Occlusion
https://media.contentapi.ea.com/content/dam/ea/seed/presentations/
gdc2018-seed-shiny-pixels-and-beyond-real-time-raytracing-at-seed.pdf p51
レイトレーシングによるAmbient Occlusion
https://media.contentapi.ea.com/content/dam/ea/seed/presentations/
gdc2018-seed-shiny-pixels-and-beyond-real-time-raytracing-at-seed.pdf p52
レイトレーシングによるAmbient Occlusion
https://media.contentapi.ea.com/content/dam/ea/seed/presentations/
gdc2018-seed-shiny-pixels-and-beyond-real-time-raytracing-at-seed.pdf p53
グラフィックスとサウンドの関係
• 光波か音波かの違いでやっていることは大体一緒(のハズ)
• AOに関していえば、リバーブがとても似た処理になる
• グラフィックスの方が研究が進んでいる
• (数の暴力)
Audio Propagation Through the Ears of VERA
• 登壇者:
• Jeff Ballard (Software Engineer, Microsoft ATG)
• Robert Ridihalgh (Senior Audio Specialist, Microsoft ATG)
Audio Propagation Through the Ears of VERA
マップの種類
• 静的マップ
• 自動生成マップ
• 動的マップ
Audio Propagation Through the Ears of VERA
既存手法例
• ブルートフォースレイキャスト
• 音響伝播シミュレーション
• その他作品独自の解決
Audio Propagation Through the Ears of VERA
目指したもの
• 実時間で動作すること
• 自動であること
• スケーラビリティがあること
• 汎用的であること
Audio Propagation Through the Ears of VERA
• Voxel Engine for Real-time Acoustics
• ボクセル?
• Volume + Pixel = Voxel
• ピクセル:2Dの平面を正方形単位で区切るもの
• ボクセル:3Dの空間を立方体単位で区切るもの
Pixel
Audio Propagation Through the Ears of VERA
その他ボクセル関連の発表
• 経路探索: “Hierarchical Dynamic Pathfinding for Large Voxel Worlds”
(宏大なボクセル世界における階層構造を用いた動的経路探索)
• ライティング: “Advances in Real-Time Voxel-Based GI”
(リアルタイムボクセルベースGIの進化)
Audio Propagation Through the Ears of VERA
VERAのプロセス手順
1. ボクセル化
2. 起点設定
3. 塗りつぶし
http://gdcvault.com/play/1025325/Audio-Propagation-Through-the-Ears p9
Audio Propagation Through the Ears of VERA
遮蔽・閉塞
http://gdcvault.com/play/1025325/Audio-Propagation-Through-the-Ears p8
Audio Propagation Through the Ears of VERA
回折
http://gdcvault.com/play/1025325/Audio-Propagation-Through-the-Ears p10
Audio Propagation Through the Ears of VERA
広い環境の対応
http://gdcvault.com/play/1025325/Audio-Propagation-Through-the-Ears p11
Audio Propagation Through the Ears of VERA
Minecraftで実験
• ボクセルベースのシステムに対して判り易い実験場
• ただし、可聴範囲が著しく狭い
Audio Propagation Through the Ears of VERA
Minecraftのリバーブに適用
• XYZ三軸で演算
• 屋内/屋外判定
• 広さでリバーブタイムを決定
Audio Propagation Through the Ears of VERA
UE4プラグイン化
• ActorやComponentといった、UE4の仕組みで動く
• 全部BPで動作する
• デバッグ機能を搭載して、情報の可視化などができる
Audio Propagation Through the Ears of VERA
State of Decay2
• 初の大規模かつ商用実践
http://news.xbox.com/media
Audio Propagation Through the Ears of VERA
実践で困ったこと
• UE4の物理情報が、取得できる場所に無い上に更新が遅い
• 手作業の発生
• CPU/メモリ負荷
• 物理的に正しいが、演出的に正しくない場合の処理
まとめ
• デザイナーとプログラマーはもっともっと協力できる
• グラフィックスの前例からサウンドは有益な研究ができる
• サウンドプログラマーはGDC行こう
資料リンク
• GDC Vault (http://gdcvault.com)
• EA SEED (https://www.ea.com/seed)
• Human Pictogram 2.0 (http://pictogram2.com/)

SIG-Audio#15 GDC2018オーディオ報告会 「サウンドプログラマー観点のGDC2018」