技術で届ける「豊かなサウンド体験」技術で届ける「豊かなサウンド体験」

製品全体の最適解を、粘り強く追求する

「音を鳴らす」ことは、ゲーム機本体やその上で動くゲームにとって、欠かせない機能です。機能の実現には、高レイヤーから低レイヤーまでさまざまなソフトウェアが必要です。たとえば、ゲーム中の音の再生を制御するサウンドミドルウェア、ゲーム機全体のサウンドを管理して実際にハードウェアを制御するシステムソフトウェア、そして、ゲームサウンドの制作を支えるツールなどです。任天堂では、これらのソフトウェアを自社開発しており、私はその設計や実装に関わってきました。

私が感じている任天堂の開発の強みは、より良い製品を実現するために、必要であればあらゆるレイヤーに踏み込んで、製品全体の最適解を粘り強く追及する点です。製品の良さにつながることであれば、入社歴に関係なく現場の開発者の提案が採用されることがあるのも強みだと思います。

たとえば、私が入社4年目のときに「ゲーム内で利用できるサウンドの処理リソースを増やしたい」と考えたことがあります。利用できるリソースを増やせれば、今までは処理が重くて諦めていたサウンド表現が可能になるためです。
これには、HOMEメニューなどゲーム以外のアプリケーションで使用する本体機能のサウンド処理を、サウンド用のプロセッサーから別のプロセッサーに移すことが必要で、それができれば実現するという見込みは自分の中では立っていました。しかし一方で、実現するためのハードルは高く、低レイヤーのシステムソフトウェアから、高レイヤーの本体機能のソフトウェアまで、幅広い範囲で変更が発生します。そのため、これを実現するためにはさまざまな開発部署や協力会社様など、多岐にわたる領域の関係者と協力をして開発をしていくことが必要不可欠でした。

多岐にわたる領域の関係者に「実現できそう」と感じてもらうには、言葉で説明をするよりも実際に試してもらった方が良いと考え、まずは自分で手を動かして、関係者が実際に確認できるよう、すばやく試作版を作ってみました。任天堂では多くの領域を自社開発しているため、このような実験的な試みも短時間かつ少人数で行うことができます。

試作をもとに、幅広い範囲の変更が必要とはなるものの、製品全体にとってはメリットがあることを関係者に説明、実演したところ、前向きに受け止められ、製品に反映することになりました。もちろん、すんなりと製品に反映できたわけではなく、たとえば「システムの処理負荷が瞬間的に高くなる場合に音声にノイズがまれに混じる」といった課題を一つ一つ地道に解決する必要があり、一筋縄ではいきませんでした。しかし、最終的に自分が提案した改善を無事にお客様の手元に向けてリリースすることができたときは、「これまではゲーム開発者が諦めていたサウンド表現が実現可能となり、その結果として、より豊かな体験をお客様にお届けできる」と思うと、大きな達成感を感じるとともに、とても嬉しく感じたことを覚えています。

ちょっとした会話から始まった、新しい試み

開発現場では「将来こんなことができたらいいな」「試しにこういったものを作ってみました」といった会話をよくします。
そして新しい試みは、そういった現場のちょっとした会話から生まれることもあります。

たとえば、ゲームに使われる音声は、サウンドデザイナーがDAW(Digital Audio Workstation)と呼ばれる音楽制作ソフトと、音声にエフェクト処理を行う「サウンドプラグイン」と呼ばれる別のソフトウェアを組み合わせて制作するのが一般的です。ここでいう音声のエフェクト処理は、オリジナルの音声にプラグインごとの特殊な効果を付与するものです。さまざまな種類がありますが、たとえば、残響により空間的な広がりを表現する「リバーブ」や、音を歪ませて特徴のある音にする「ディストーション」などがあります。

ある日、チーム内のちょっとした会話で「業界標準のサウンドプラグインを動かすためのコードを試しに書いてみた」という話が出ました。そこから、「サウンドプラグインをゲーム開発ツールに直接組み込めたら、ゲーム内で使用するたくさんの音声に一括でエフェクト処理をすることができて、さらにゲームサウンド制作をしやすくなるのではないか」という発想が生まれました。

そこで、はじめにゲーム開発ツールでサウンドプラグインを簡単に利用できるライブラリと、それを扱うためのツールを開発しました。開発で意識したのは、「社内にすでにあるワークフローに組み込みやすいこと」です。組み込みのために必要なコストを可能な限り下げることで、広い範囲で使ってもらうことを目指しました。さらに、すぐに効果を感じてもらえるように、ゲーム開発チームが担当しているツールへの組み込みも自分たちで行いました。

結果的にこの仕組みは、ゲームのアセットパイプライン(素材管理の仕組み)に統合され、CIサーバー(自動処理システム)で実行できるようになりました。その結果、ゲーム開発者ごとの環境の違いによる影響を受けない、かつ手作業によるオペレーションミスの可能性を減らした安定した状態で、大量の音声にエフェクトを一括適用できるようになりました。

この仕組みは、主に収録したキャラクターボイスの加工に利用されています。
複数の言語に対応したゲームでは、膨大な量のキャラクターボイスを扱う必要があります。従来は、サウンドデザイナーがDAW上で、収録された音声ごとにサウンドプラグインを使ってエフェクト処理を行っていました。
この仕組みが導入された後は、各音声に対して一括で自動的にエフェクトを適用できるようになり、制作現場での作業負担を減らし、安定した品質で大量の音声を扱えるようになりました。

サウンドプラグインを社内ツール上で動作確認

ふとしたきっかけが、大きな価値になる

自分の作った仕組みが活用され、ゲームのサウンドがより魅力的になったと感じたり、ゲーム開発者が喜んでくれる瞬間に立ち会ったりすることができ、この仕事ならではの喜びがあると感じています。また、任天堂の開発現場では、ちょっとした会話や試作から生まれたアイデアが、制作のワークフローや実際の製品にすばやく反映されることも多くあり、スピード感と柔軟さを実感できる環境だと思います。

ゲーム制作において実現したいことを叶えるために、複数のレイヤーにまたがって最適な解決策を追及する。その自由度と裁量の大きさが、この仕事の醍醐味です。

社員略歴

松本さん技術開発部/2014年入社
2014年「理工系(ソフトウェア)」入社。
ソフトウェアエンジニアとして、Ninetndo Switchなどのゲームプラットフォームのサウンドシステム、ゲームアプリケーション向けサウンドミドルウェア、ツールなどサウンド関連のソフトウェア開発全般に携わる。
職種データ

      ↑