Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
サウンド実装のちょっとした"気配り"で
ユーザに”快適感”を。
&サウンドミドルウェア「ADX2」のご紹介
2015年3月13日
株式会社CRI・ミドルウェア
2
このロゴの会社です
■ CRIのミドルウェア群の総称
製品ラインナップ
・CRI ADX2
オーディオ統合ソリューション
・CRI Sofdec2
動画再生ミドルウェア。複数同時再生、アルファムービーなど
・ファイルマジックPRO
ファイル読み込み、圧縮/パッキン...
今日のテーマ
ゲームサウンドの
クオリティアップをしよう!
サウンド演出にちょっとだけこだわる
● サウンド再生比較
単に音が鳴っているのと、ちょっとした演出を入れた場合の違い
- クロスフェード
- ランダム再生
- パラメータのランダマイズ
- ダッキング
- 発音数制御
→ 自然さ、聞き心地の良さ...
ちょっとした演出を入れる
• BGMは「フェードイン」「フェードアウト」「クロスフェード」
切り替え時に音がブツッとなると不快!
→クロスフェードで自然と切り替わるように。
• セリフやジングルが聞こえやすくなるように
BGMがガンガン鳴ってい...
たくさん同時に鳴る場合に処理落ちしないか?ノイズにならないか?
• SEは再生数上限をつくろう
– 爆発音とか、効果音が重なりすぎると音が割れて不快。
– 音を鳴らしまくると、負荷は当然重くなる。
• コーデックは適切に選ぼう
– oggやmp...
• SEはメモリ再生
– 必要なデータだけ読みこむように
– Wavの場合はデータが大きいので注意。
• ボイス、BGMはストリーミング再生
– (端末ストレージ、SDからの)ストリーミング再生
– 再生レスポンスは多少かかるが、メモリ使用量は...
実装だ!
iOS:よい
Android:大変!!
なにが大変?
• サウンド再生が遅い
– OSの問題で、根幹解決は難しい
• 特定の端末で不具合
– シーク再生が変、ストリーミング再生してるとだんだんズレる
– Android 5.0 (Lolipop)でうまく動かない
– アプリがバックグ...
何をすればいいか
• SimpleAudioEngineを使う?
– WavやMP3の再生をする。それだけのもの。足りない…
• サウンド機能の拡張 or 自前実装が必須
– イントロ+ループ再生などの再生
– 任意位置からの再生
– ピッチ変...
サウンドミドルウェア
「ADX2」セット内容
• 専用サウンドツール「CRI Atom Craft」
– ゲーム内での音の鳴り方を管理・設定するツール
• サウンドライブラリ
– サウンド演出の実装がラクに
– オリジナルの圧縮コーデックで小さく
– 動的なサウンド...
■ プログラマとサウンドデザイナの分業
パラメータ制御や再生タイミング、発音数制御などは、データ側に設定。
→プログラム側は単純な再生制御だけでOK。
「ADX2」の基本コンセプト
プログラマ
ADX2オーサリングツール
!
サウンドデザイナー
17
音素材を時系列に並べる
ボリュームやピッチの
変化などグラフで加工
エフェクトの設定
キュー
(音の単位)
キューの中身CRI Atom Craftのツール構成
「ADX2」の”キュー”という概念
名前:「Shot1」
※この名称で
プログラムから呼ぶ
• 同時再生の上限値:3
プログラムからコールされまくっても大丈夫
• カテゴリー:SE
カテゴリーごとのボリューム変更などに使う
• プライオリティー...
これまでの音声再生
gunshot.wav
音声データを指定して再生
・ストリーミング再生?
・ボリュームを変える
・ピッチを変える
・ループ再生
・同時再生数は?
・フェードイン・アウトは?
・同時再生数制御機能
・フェード機能
・ループ再生...
「ADX2」を使うと
gunshot.hca
(圧縮した
音声データ
の参照)
音の設定
・ストリーミングorメモリ
・ボリューム
・ピッチ
・ループ位置
・同時再生数
・フェードイン・アウト
Gunshotキュー
「キュー」を指定して再生
A...
「ADX2」で設定できるサウンド制御
• ボリューム制御
– 音ごとのボリューム制御
– 曲・効果音・ボイスをカテゴリ分けして、
一括ボリューム管理
• 再生制御
– 再生優先順位
– 効果音の後発優先、先発優先
– 同時発音数の制御
– ラン...
「ADX2」の独自コーデック
• HCA / HCA-MX コーデック
– 圧縮率はmp3 / Oggと同程度(人の声の圧縮に多少強い)
– CPU負荷低め、大量にリクエストしても急に負荷が上がらない
– さらにデコード処理負荷を大幅に抑える特...
HCA-MXコーデックの特長
• 音を同時再生する際のCPU負荷が軽くなります。
• 従来wavで鳴らしていた素材も圧縮できるようになり、
ディスク容量とメモリ使用量が節約できます。
• 制限事項
– HCA-MXでは音ごとのピッチ変更、フィル...
イントロ付きループ
■ 途切れず、綺麗にループするBGM
- ループポイント付き波形の圧縮・再生に対応
- イントロ付きループBGMをプログラムの工夫無しで実現
サウンドごとの音量調整
■ ADX2のオーサリングツール上で調整
- BGMやSEの音量はADX2ツール上で調整。素材波形の変更不要。
- BGMカテゴリを作って、BGMの一括音量調整。
- アプリからの動的な音量調整ももちろん可能。
ダッキングとカテゴリ
■ カテゴリ指定によるダッキング
- 音声再生中はBGMの音量を下げるような処理をデータ側のみで設定。
- サウンドをカテゴリにわけて、まとめてボリューム調整するなどの利用も可能。
M01
音楽カテゴリ (変化)
M02 ...
[Android] 再生レイテンシ
■ Android用の低レイテンシ再生モード
- ネイティブサウンドレンダラという低レイテンシ再生モードあり。
[Android] 遅延推測機能β版
■ 端末のサウンド再生遅延時間をライブラリで推測
プログラムによる再生指示
スピーカーからの発音
ここにかかる時間が「再生遅延時間」。??? ミリ秒。
● Android の場合
- 遅い!
- 機種によっ...
ADX2/Sofdec2 の暗号化
● ADX2/Sofdec2データの暗号化
iOS/Androidでデータ共通利用可能。
Cocos2d-xでは暗号キー指定のみで使用可能。
インゲームプレビュー機能
■ スマートフォン実機と通信
- スマートフォンで実行中のゲームと CRI Atom Craft でWiFi接続。
→ ゲームで実際に色々な音が重なる状況で聞こえ方を調整可能。
音量、エフェクト、メモリ再生の波形などを...
「ADX2」導入メリット
• 音声圧縮&再生負荷を軽減
– 多重再生時に重くならないモードがある独自コーデック。
圧縮やクオリティはmp3/Ogg同等ながら、再生負荷が低い。
– イントロ付きループBGMが使える。(任意ポイントでのループ)
音...
ざんねんながら
• ブラウザゲーム出力に非対応
– ネイティブライブラリを動かせるブラウザが現状Choromeしか無いため。
(WebGLとかでも同様)
• サウンドツールはWindows版のみ
– Mac版は開発中です。ゴメンナサイ。
– P...
個人開発者の方へ
無償版個人アプリ開発者向けサウンドミドルウェア
「ADX2 LE」とは
• 無償版サウンドエンジン+オーサリングツール
– 個人のインディーゲーム開発、ゲームジャム向け
• 無償で利用可能(有料で頒布するゲームに使ってもOK)
• ゲーム販売の売上1,000万円以下まで
• 二次創作は自己責...
「ADX2 LE」の使用条件
• 前年度年商が1,000万円以下の会社または団体・個人であること
• コンテンツの配信元が自身であること
※販売権を自身で持ち、パブリッシャーを介さず自分でApp Storeなどに登録する。
• コンテンツの売上...
「ADX2 LE」情報
• Facebook ADX2ユーザー助け合い所
– https://www.facebook.com/groups/adx2userj/
• Wiki サウンド助け合い所
– http://www53.atwiki.j...
おまけ:アルファムービー演出ミドルウェア
(法人向け)
Sofdec2のキーポイント
■ 動画をテクスチャとして使う
- ムービーテクスチャ を実現。動画を貼り付ける。描画はアプリの自由。
- 透過情報 を入れたアルファムービーが利用可能。 演出の幅が大きくアップ。
- 柔軟でリッチな再生機能 にも...
Sofdec2 for cocos2d-x
ムービー
■ ムービースプライトクラス(サンプル)
- スプライトにムービーを貼ることができます。
- cocos2d-x ならではの、クリッピングノードやアクションの機能も利用可能。
Android版デモのダウンロード
■ アルファムービデモのAndroid版
- http://crimw.me/alphamovie
- 「提供元不明のアプリ」のインストールを許可してください。
- 容量 約23MByte
<動作環境>
AR...
CRIWARE は単なるツールではありません。
より素晴らしいゲーム制作をサポートするサービスです。
是非とも、皆様のご意見・ご要望をお聞かせください。
更に詳しい情報は
http://www.cri-mw.co.jp/dev_app/
Upcoming SlideShare
Loading in …5
×

Cocos2d-x Talks #2 「サウンド実装のちょっとした気配りで ユーザに”快適感”を。 &サウンドミドルウェア「ADX2」のご紹介」

4,815 views

Published on

3/13のイベントCocos2d-x Talks #2で紹介したスライド資料です。
http://www.cri-mw.co.jp/dev_app/

  • Be the first to comment

Cocos2d-x Talks #2 「サウンド実装のちょっとした気配りで ユーザに”快適感”を。 &サウンドミドルウェア「ADX2」のご紹介」

  1. 1. サウンド実装のちょっとした"気配り"で ユーザに”快適感”を。 &サウンドミドルウェア「ADX2」のご紹介 2015年3月13日 株式会社CRI・ミドルウェア
  2. 2. 2 このロゴの会社です
  3. 3. ■ CRIのミドルウェア群の総称 製品ラインナップ ・CRI ADX2 オーディオ統合ソリューション ・CRI Sofdec2 動画再生ミドルウェア。複数同時再生、アルファムービーなど ・ファイルマジックPRO ファイル読み込み、圧縮/パッキング、ネットワーク対応 CRIWAREとは
  4. 4. 今日のテーマ ゲームサウンドの クオリティアップをしよう!
  5. 5. サウンド演出にちょっとだけこだわる ● サウンド再生比較 単に音が鳴っているのと、ちょっとした演出を入れた場合の違い - クロスフェード - ランダム再生 - パラメータのランダマイズ - ダッキング - 発音数制御 → 自然さ、聞き心地の良さ、ゲーム的な強調。
  6. 6. ちょっとした演出を入れる • BGMは「フェードイン」「フェードアウト」「クロスフェード」 切り替え時に音がブツッとなると不快! →クロスフェードで自然と切り替わるように。 • セリフやジングルが聞こえやすくなるように BGMがガンガン鳴っていると肝心な音が聞こえない! →目立たせたい音がなる時だけ、BGMの音量を下げる。 • 効果音にバリエーションをつくる 射撃音とかパンチ音とか、同じ音が続くと単調! →ピッチを変えたり、フィルタをかけたり、複数のSEを組みあわせて再生したりする。
  7. 7. たくさん同時に鳴る場合に処理落ちしないか?ノイズにならないか? • SEは再生数上限をつくろう – 爆発音とか、効果音が重なりすぎると音が割れて不快。 – 音を鳴らしまくると、負荷は当然重くなる。 • コーデックは適切に選ぼう – oggやmp3をむやみに使うと、再生時に突発的な CPU負荷が発生してカクッとする場合がある。
  8. 8. • SEはメモリ再生 – 必要なデータだけ読みこむように – Wavの場合はデータが大きいので注意。 • ボイス、BGMはストリーミング再生 – (端末ストレージ、SDからの)ストリーミング再生 – 再生レスポンスは多少かかるが、メモリ使用量は小さくなる。
  9. 9. 実装だ!
  10. 10. iOS:よい
  11. 11. Android:大変!!
  12. 12. なにが大変? • サウンド再生が遅い – OSの問題で、根幹解決は難しい • 特定の端末で不具合 – シーク再生が変、ストリーミング再生してるとだんだんズレる – Android 5.0 (Lolipop)でうまく動かない – アプリがバックグラウンドに入ると、音周りが挙動不審に • データの保護は期待できない – SDカードからoggデータが抜かれる
  13. 13. 何をすればいいか • SimpleAudioEngineを使う? – WavやMP3の再生をする。それだけのもの。足りない… • サウンド機能の拡張 or 自前実装が必須 – イントロ+ループ再生などの再生 – 任意位置からの再生 – ピッチ変更などのエフェクト – サウンド再生数上限の拡張 • OpenSL ESやOpenALの知識が必要 – かつ、Android機種個別の対応が・・・ – 音声再生時刻のカウントとか・・・
  14. 14. サウンドミドルウェア
  15. 15. 「ADX2」セット内容 • 専用サウンドツール「CRI Atom Craft」 – ゲーム内での音の鳴り方を管理・設定するツール • サウンドライブラリ – サウンド演出の実装がラクに – オリジナルの圧縮コーデックで小さく – 動的なサウンドエフェクト適用がラクに • ピッチチェンジ、リバーブなど各種エフェクト • 複数の音を時系列に配置して再生 – インタラクティブな音作り
  16. 16. ■ プログラマとサウンドデザイナの分業 パラメータ制御や再生タイミング、発音数制御などは、データ側に設定。 →プログラム側は単純な再生制御だけでOK。 「ADX2」の基本コンセプト プログラマ ADX2オーサリングツール ! サウンドデザイナー
  17. 17. 17 音素材を時系列に並べる ボリュームやピッチの 変化などグラフで加工 エフェクトの設定 キュー (音の単位) キューの中身CRI Atom Craftのツール構成
  18. 18. 「ADX2」の”キュー”という概念 名前:「Shot1」 ※この名称で プログラムから呼ぶ • 同時再生の上限値:3 プログラムからコールされまくっても大丈夫 • カテゴリー:SE カテゴリーごとのボリューム変更などに使う • プライオリティー:5 カテゴリー内で優先度をつける。 波形データと再生位置 キューの設定欄 (一部)
  19. 19. これまでの音声再生 gunshot.wav 音声データを指定して再生 ・ストリーミング再生? ・ボリュームを変える ・ピッチを変える ・ループ再生 ・同時再生数は? ・フェードイン・アウトは? ・同時再生数制御機能 ・フェード機能 ・ループ再生機能 ・ピッチランダム機能 サウンド演出の実装 音声データの加工、 圧縮設定 スクリプト: サウンド演出の パラメーター設定
  20. 20. 「ADX2」を使うと gunshot.hca (圧縮した 音声データ の参照) 音の設定 ・ストリーミングorメモリ ・ボリューム ・ピッチ ・ループ位置 ・同時再生数 ・フェードイン・アウト Gunshotキュー 「キュー」を指定して再生 ADX2 ライブラリ サウンドツールによる設定 再生指示はシンプルに
  21. 21. 「ADX2」で設定できるサウンド制御 • ボリューム制御 – 音ごとのボリューム制御 – 曲・効果音・ボイスをカテゴリ分けして、 一括ボリューム管理 • 再生制御 – 再生優先順位 – 効果音の後発優先、先発優先 – 同時発音数の制御 – ランダム再生 • DSP – ピッチシフト – リバーブやエコーなどエフェクト – パンニングや距離減衰など3D効果 • 曲の再生制御 – 曲と環境音の同時再生 (2曲の同時ループ) – 曲の途中ループ – 曲の途中停止・途中から再生 • フェードイン、フェードアウト – フェードの長さ調整 – クロスフェード – カテゴリをトリガにした 自動音量ダッキング「REACT」 • 3Dパンニング/ポジショニング これは一例でス。便利な機能は まだまだありまス!
  22. 22. 「ADX2」の独自コーデック • HCA / HCA-MX コーデック – 圧縮率はmp3 / Oggと同程度(人の声の圧縮に多少強い) – CPU負荷低め、大量にリクエストしても急に負荷が上がらない – さらにデコード処理負荷を大幅に抑える特別な仕組み
  23. 23. HCA-MXコーデックの特長 • 音を同時再生する際のCPU負荷が軽くなります。 • 従来wavで鳴らしていた素材も圧縮できるようになり、 ディスク容量とメモリ使用量が節約できます。 • 制限事項 – HCA-MXでは音ごとのピッチ変更、フィルタ変更などができません。 – サンプリングレートを統一する必要があります。(デフォルトは32KHz)
  24. 24. イントロ付きループ ■ 途切れず、綺麗にループするBGM - ループポイント付き波形の圧縮・再生に対応 - イントロ付きループBGMをプログラムの工夫無しで実現
  25. 25. サウンドごとの音量調整 ■ ADX2のオーサリングツール上で調整 - BGMやSEの音量はADX2ツール上で調整。素材波形の変更不要。 - BGMカテゴリを作って、BGMの一括音量調整。 - アプリからの動的な音量調整ももちろん可能。
  26. 26. ダッキングとカテゴリ ■ カテゴリ指定によるダッキング - 音声再生中はBGMの音量を下げるような処理をデータ側のみで設定。 - サウンドをカテゴリにわけて、まとめてボリューム調整するなどの利用も可能。 M01 音楽カテゴリ (変化) M02 M03S01 セリフカテゴリ (トリガ) S02 S03 ダッキング指示 変化 カテゴリ トリガ カテゴリ
  27. 27. [Android] 再生レイテンシ ■ Android用の低レイテンシ再生モード - ネイティブサウンドレンダラという低レイテンシ再生モードあり。
  28. 28. [Android] 遅延推測機能β版 ■ 端末のサウンド再生遅延時間をライブラリで推測 プログラムによる再生指示 スピーカーからの発音 ここにかかる時間が「再生遅延時間」。??? ミリ秒。 ● Android の場合 - 遅い! - 機種によって差が激しい!遅いと 200msec以上。 - 誰も教えてくれない! ADX2に遅延時間推測関数を追加。 ※β版です。現在はUnityのみ。
  29. 29. ADX2/Sofdec2 の暗号化 ● ADX2/Sofdec2データの暗号化 iOS/Androidでデータ共通利用可能。 Cocos2d-xでは暗号キー指定のみで使用可能。
  30. 30. インゲームプレビュー機能 ■ スマートフォン実機と通信 - スマートフォンで実行中のゲームと CRI Atom Craft でWiFi接続。 → ゲームで実際に色々な音が重なる状況で聞こえ方を調整可能。 音量、エフェクト、メモリ再生の波形などを直接変更。 - CRI Atom Craft で作成中のサウンドをPCではなくスマホから鳴らす事も。 (ターゲットプレビュー機能)
  31. 31. 「ADX2」導入メリット • 音声圧縮&再生負荷を軽減 – 多重再生時に重くならないモードがある独自コーデック。 圧縮やクオリティはmp3/Ogg同等ながら、再生負荷が低い。 – イントロ付きループBGMが使える。(任意ポイントでのループ) 音質アップと容量削減が両立できます。 • ツールによるサウンド演出設計 – 大量音声データの管理がラクに。 – プログラムを触らずに音量やエフェクトの調節ができる。 サウンド周りのコーディング量が大幅に減ります。
  32. 32. ざんねんながら • ブラウザゲーム出力に非対応 – ネイティブライブラリを動かせるブラウザが現状Choromeしか無いため。 (WebGLとかでも同様) • サウンドツールはWindows版のみ – Mac版は開発中です。ゴメンナサイ。 – Pallarels、VMwareなどの仮想環境で動作確認とっています。
  33. 33. 個人開発者の方へ
  34. 34. 無償版個人アプリ開発者向けサウンドミドルウェア
  35. 35. 「ADX2 LE」とは • 無償版サウンドエンジン+オーサリングツール – 個人のインディーゲーム開発、ゲームジャム向け • 無償で利用可能(有料で頒布するゲームに使ってもOK) • ゲーム販売の売上1,000万円以下まで • 二次創作は自己責任だぞい 公式サイト http://www.adx2le.com/ からSDKダウンロード
  36. 36. 「ADX2 LE」の使用条件 • 前年度年商が1,000万円以下の会社または団体・個人であること • コンテンツの配信元が自身であること ※販売権を自身で持ち、パブリッシャーを介さず自分でApp Storeなどに登録する。 • コンテンツの売上が1,000万円以内であること 「ADX2 LE」を使用したコンテンツ配信の条件 (コンテンツの無償/有償に関わらず) “本コンテンツには、(株)CRI・ミドルウェアの 「CRI ADX2 (TM) LE」が使用されています。” • 著作権表記
  37. 37. 「ADX2 LE」情報 • Facebook ADX2ユーザー助け合い所 – https://www.facebook.com/groups/adx2userj/ • Wiki サウンド助け合い所 – http://www53.atwiki.jp/soundtasukeai/
  38. 38. おまけ:アルファムービー演出ミドルウェア (法人向け)
  39. 39. Sofdec2のキーポイント ■ 動画をテクスチャとして使う - ムービーテクスチャ を実現。動画を貼り付ける。描画はアプリの自由。 - 透過情報 を入れたアルファムービーが利用可能。 演出の幅が大きくアップ。 - 柔軟でリッチな再生機能 にも対応。 (例: シームレスループ/連結再生、複数再生、タイミング情報埋め込み)
  40. 40. Sofdec2 for cocos2d-x ムービー ■ ムービースプライトクラス(サンプル) - スプライトにムービーを貼ることができます。 - cocos2d-x ならではの、クリッピングノードやアクションの機能も利用可能。
  41. 41. Android版デモのダウンロード ■ アルファムービデモのAndroid版 - http://crimw.me/alphamovie - 「提供元不明のアプリ」のインストールを許可してください。 - 容量 約23MByte <動作環境> ARMv7対応のCPU
  42. 42. CRIWARE は単なるツールではありません。 より素晴らしいゲーム制作をサポートするサービスです。 是非とも、皆様のご意見・ご要望をお聞かせください。 更に詳しい情報は http://www.cri-mw.co.jp/dev_app/

×