開発工程でキャラクターの見た目に違和感が出たことにより必要になった品質アップ

中野俊寛氏(以下、中野):続いて、品質アップのために行った対策について話します。なぜ品質アップのための対策が必要だったのか。それは、ここまで解説してきた基本仕様を定めたあとの開発工程でキャラクターの見た目に違和感が出てきたからです。そんな見た目の違和感を払拭するために都度仕様を更新してきました。今回は、開発工程で新たな基本仕様となった事例と対策を紹介します。ここからは、埋まりの対策、ライトの対策、衣服と髪の動きの対策の3つの順で解説します。

品質アップの対策その1 埋まりの対策

1つ目は埋まりの対策です。(スライド)右の画像では、腰に当てている手が衣装にめり込んでいます。このように、同じ動きでも腕が衣装にめり込んでしまうことが多発しました。これが問題の埋まりです。動きを意識することで、衣装デザインの幅を狭めたくなかったので、対策を講じる必要がありました。

埋まりは、IKコリジョンで回避することにしました。IKとは、コリジョンというところから説明します。IKとは「Inverse Kinematics」と言われるジョイントの計算方法です。(スライドの)右の画像をご覧ください。IKはこのように回転を制御するFK(Foword Kinematics)とは違い、ジョイントの終点をコントロールし、移動で制御する方法です。

コリジョンとは、日本語で「衝突」を意味し、ある物体が別の物体に当たったかどうかを判定するプログラム処理を指します。

これらを踏まえたうえで、左の画像を見ると、緑のコリジョンが赤いコリジョンに当たり、腕を押し上げているのが確認できます。

埋まりの対策の流れを見ていきましょう。この画像を見てください。IKコリジョンがない状態で、手が衣装に埋まっています。手の埋まりを回避するためにIKコリジョンを仕込むと、手が衣装にめり込まなくなりました。このようにIKコリジョンを仕込むことで、同じ動きでもウマ娘ごとの見栄えを保ち、さらに調整をする手間を減らすことができました。

品質アップの対策その1 ライトの対策

2つ目はライトの対策です。開発部のライブ映像をご覧ください。ウマ娘はライブを行いますが、ほかにもレースなど、さまざまなシーンが存在しており、演出、表現方法が全く異なります。そのため、キャラモデルにはシーンごとの対策を講じないと説得力が出ないと考えました。これは開発初期のライブ演出ですが、開発が進むにつれて、よりドラマチックなライトの演出を導入することになり、キャラモデル側にも対応を施す必要がありました。

そのライトの対策の1つとして、フレアコリジョンを設置しました。(スライド)右の画像に緑の球が確認できます。これがフレアコリジョンです。

ライブ背景に設置されたレンズフレアを発生させるフレアライトです。フレアライトでは、レンズフレアという光の現象が再現されています。レンズフレアとは、ライブで使われるライトのように光源が強い光を放つ場合、ライトがカメラのレンズに向けられた時に発生する光の現象です。

フレアコリジョンは、フレアライトを遮る効果を持っています。フレアライトの手前にキャラクターが立った時、フレアコリジョンを設置しないと光がキャラクターを貫通してしまいます。フレアコリジョンを設置すると、右の画像のように光がキャラクターを貫通しなくなりました。これによってキャラクター、ライト、カメラをより自由に排出することが可能となり、ライブ演出の幅が格段に広がりました。

品質アップの対策その1 衣服と髪の動きの対策

3つ目は衣服と髪の動きの対策です。開発初期、次のような違和感が発生していました。この動画を見ると、スカートに布の柔らかさが感じられず、硬い印象があります。ここではスカートはしなやかに弛んでほしいですね。右の動画を見ると、髪の毛の動きが硬く見えます。ダイワスカーレットが頭を傾けたあと、ツインテールが浮き上がるからです。柔らかい髪の毛ではとても不自然な挙動です。

違和感を払拭するためにエンジニアに相談し、キャラモデル仕様の見直しと、揺れものの動きを再構築しました。これらの違和感を払拭したライブ映像を見てください。

それぞれのウマ娘のスカートや胸のリボン、髪の毛などが滑らかに、より自然に動いているのがわかるかと思います。

いかがでしたでしょうか。揺れものの自然な柔らかさを感じてもらえたと思います。開発初期と現在の揺れものを比較しました。画像を見てもわかるように、スカートや髪の毛が以前よりもなびき、硬い印象がなくなっています。また、揺れものの不自然な浮きがなくなっています。このように重力や抵抗力、素材としての硬さや柔らかさを細かく調整し、ウマ娘や衣装それぞれに設定することで、違和感のない自然な揺れものの動きを再現できました。

まとめです。ウマ娘の基礎品質アップとは、見ている人に違和感を感じさせない仕組みを構築し、基本仕様に組み込んでいくことです。これにより、キャラモデルの品質の底上げができました。今回はその一部として、埋まり、ライト、揺れものの動きを紹介しました。

ウマ娘の個性を引き出す、フェイシャルを利用した感情表現

本間俊介氏(以下、本間):続いて、ウマ娘ならではの表現について解説します。基本仕様以外にも、ウマ娘を表現するためには欠かせない要素がたくさんあります。ウマ娘の表現の1つで何が印象的かと問われれば、表情を挙げる方が多いかもしれません。また、ライブやレースなど臨場感あるシーンも重要な要素です。ここではまず、表情に関する内容を紹介します。それでは実際に見てみましょう。

なぜ表情に力を入れたのかというと、ウマ娘それぞれの個性を出したい、ウマ娘たちにもっと感情移入してもらいたいからです。また、トレーナーの方々に、それを実感してもらうための大事な要素として、表情、動き、情景が重要であると考えました。

しかし、そのうちの表情に関しては、開発当初はまだまだ種類が少ない状態でした。ウマ娘の個性を引き出したい、トレーナーの方々に感情移入してもらいたいという思いを実現させるために、表情のバリエーションを出せる仕組みを制作しました。

表情のバリエーションを出すための仕組みとして、フェイシャルを利用した感情表現と瞳のハイライトを説明します。

ベース部分と補助部分の掛け合わせでさまざまな表情を作る

まずはフェイシャルを利用した感情表現です。感情表現の仕組みは、ベース部分と補助的に使用する部分に分けて解説します。

まずはベース部分から見ていきます。ベース部分にあたるフェイシャルは、眉毛、目、口の3つのグループに分けて、それぞれの表情のパターンを作成しています。これらを組み合わせることで、フェイシャルのバリエーションを表現します。ベース部分といっても内容は多岐にわたり、笑い、怒り、悲しみ、喜びなど、さまざまな表情を作るのはもちろんのこと、このように会話をする際の口のパターンや、場合によってはブレンド率を変えて、複数のパターンを掛け合わせることも可能です。

右の画像では怒った表情のパターンに、頬を膨らませる表情を混ぜて、よりムスッとした印象を加えています。これもベース部分だけで表現可能です。どのウマ娘が同じ表情をしても、違和感なくクオリティを維持できるようにこれを作成していきます。

これはベースを活用した例です。会話シーンも自然なやりとりになっています。

次に、補助的に使用する要素の説明です。フェイシャルパターンの中には、単独では使用せず、複合することを前提としたものがあります。特に顕著なのが、眉と口の項目にあるスケール、オフセットと呼ばれる要素です。スケールは、各フェイシャルの変形をより顕著にするために拡大縮小ができ、オフセットは形状を維持したまま位置をずらせます。画像はスケールを使用した例です。口元に注目すると、ニュアンスを維持したまま、より大げさな表情になっているのがわかるかと思います。

これらを複合的に組み合わせて、より絵で描いたような狙った表現に近づけていきます。画像の変化にご注目ください。眉や口の位置も定位置よりずらし、表情を表現しています。また、アゴも調整することで、より狙った表現にしています。

キャラクターの表情をより豊かにする、漫画目・涙・チーク・青ざめ

ここまではフェイシャルの仕組みで表現してきましたが、感情表現はそれだけではありません。まずは漫画目から見ていきましょう。漫画目は通常のフェイシャルでは表現が困難な、よりコミカルでデフォルメの利いた表現を行うための仕組みです。漫画目は瞳を隠し、その上に各種のフェイシャルをアタッチすることで表現しています。実装したものがこの画像です。非常にコミカルなシーンに仕上がっていると思います。

次に涙です。涙は3種類存在します。目の下に溜まる涙、流れる涙、目尻の涙です。これらを用途に応じて使用しています。実装したものがこの画像です。ライブのささやかな祈りでは、溜まる涙と流れる涙が非常に象徴的に使用されています。

続いて、チークです。照れた際や、激しく運動した時などに使用しています。あらかじめキャラモデルごとにチーク用のメッシュを配置しておき、使用する際は任意の濃さで表示しています。テクスチャは1キャラモデルあたり2種類用意しています。

これは会話中の使用例です。左のスペシャルウィークの頬にご注目ください。感情に合わせてかなり細かく赤みが変化しているのがわかると思います。

最後に青ざめです。青ざめは血の気が引いた表現などに使用するもので、キャラモデルの顔に青いグラデーションを入れています。キャラモデルの頭部の任意の2点で、グラデーションをかけるように指定しています。これはイベントシーンなどでよく使用しています。青ざめの解説は以上です。

以上、フェイシャルの紹介でした。これらを掛け合わせることで、さまざまなシーンにおける自由な表情を作り出すことが可能になりました。

さらなる表現として追求した瞳のハイライト

次に、さらなる表現として追求した、瞳のハイライトに関する解説です。瞳はキャラクターを魅力的に見せるための大切な要素ですが、ウマ娘では特にハイライトに関する表現を追求しています。瞳は下地となるディフューズテクスチャのほかに、ハイライト単体のテクスチャを持っており、これらを組み合わせることで多彩な瞳が表現できます。

ハイライトは縦、横移動、回転のほかに、ハイライトそのものの強度を変えられます。ウマ娘の感情が高ぶり泣きそうな時などはハイライトが大きくなったり、ハイライトの粒が増えたりなどという具合です。逆にハイライトをなくすことも可能です。

また、ハイライト単体のアニメーションも存在しており、現在はウルウルと、きらめきの2種類があります。これは通常のフェイシャルとは異なり、単体で時間軸を持つアニメーションデータです。ウマ娘の感情が高まってウルウルした時や、感動して瞳がきらめいた時などに使用します。実際の使用例を見てみましょう。

1つ目はスマートファルコンのスキルカットです。ラストの決めカットでは、豪華なエフェクトと一緒にハイライトの輝きも増しているのがわかります。

2つ目はライブのライスシャワーです。ここではしっとりと歌い上げるシーンなので、細やかな表情の変化と相まって効果的に使用されています。

3つ目はウイニングチケットのストーリーレース勝利時です。先ほどまではウルウルを使用した例でしたが、こちらはきらめきとウルウルの両方を使用しています。チークなども合わさり、より生き生きとした表情になっています。瞳のハイライトの解説は以上です。

まとめです。ウマ娘たちのより自然な感情表現を引き出すために、バリエーションに富んだ仕組みを構築しました。パーツやパターンを複合的に組み合わせることで多彩な表情を表現して、キャラクター性をより豊かに見せました。瞳のハイライトや、ハイライトの動的な変化やモーションを駆使して、よりアニメ的な感情表現を追求しました。表情についての解説は以上です。

雨天時や降雪時に使う濡れ表現

中野:続いて、臨場感を出すための工夫について話します。まずは臨場感を出す動機から話します。目的は、ゲームの中で白熱したレース場や、熱狂的なライブ会場などのリアル感を演出するためです。濡れ、汚れ、汗といったリアルさを出すことで、臨場感や緊迫感を表現したかったからです。ここからは濡れ、汚れ、汗について話します。

まずは濡れ表現について解説します。濡れは、主にレースシーンの天候が雨や雪の場合に使用する表現です。実装した目的は、雨が降っているにも関わらず、ウマ娘が濡れていないという見た目に違和感があったからです。濡れ表現がないことで、曇りとの差別化もできていませんでした。

実際のレースシーンを見てみましょう。晴れの日と雨の日です。ご覧のように同じウマ娘、同じ場所でもこんなに見た目が違います。それでは詳しく見てみましょう。

左が通常のモデル、右が濡れのモデルです。濡れのモデルは、衣類の各所に水が染み込んでいるのが確認できます。濡れ表現は、キャラモデルに使用されている各テクスチャを濡れ専用のテクスチャに切り替えることで実現しています。

また、衣類が水気を帯びた表現として、環境マップの効果を適用しています。(スライドを示して)この部分です。衣類がわずかに光沢を持つ表現になっています。キャラモデルを回転させると、水気を帯びた光沢感がわかると思います。それでは動画をもう一度見てみましょう。

濡れ表現として水が染み込んだ衣類と、そこに生じる光沢が確認できます。これらの手法により、どの天候でも違和感なくウマ娘たちが存在することが可能となりました。

レース中のリアルな状況を表現する汚れ

次に汚れについて紹介します。馬場状態が悪い時に汚れは効果を発揮します。馬場状態が悪い場合、通常時よりも蹴り上げた土が後方に舞い上がりますが、レース時にウマ娘がキレイな衣服の状態であることに違和感を覚えたため、実装しました。

まずはレースの動画をご覧ください。ウマ娘の衣服に注目すると、レースの進行に合わせた汚れの変化を確認できます。ご覧いただいたように、序盤・中盤・終盤とレースの展開が進むにつれて、衣服の汚れがだんだんと広がり、色濃くなっていきます。仕組みを詳しく見てみましょう。

汚れは、左の図のようにマスクテクスチャを用意して、RGBチャンネルの3つの要素に分けて汚れを制御しています。レッドのチャンネルとグリーンのチャンネルは、それぞれ違った汚れが描画されており、レース展開によって時間差で発生するようにしています。ブルーのチャンネルは、レースの進行に合わせて足元に汚れが発生するように設定しています。この制御によって、レースの展開に合った汚れを違和感なく表現できました。

仕組みを踏まえて、もう一度画像を見てみます。序盤と中盤と終盤で汚れの変化が確認できると思います。これらの手法により、レース中のリアルな状況を表現できました。

ウマ娘の必死さや疲労感は汗で表現

最後は、汗について解説します。汗は激しく動いた時の表現として使用しています。開発当初は汗の設定がありませんでしたが、必死で体を動かすウマ娘を見た時に、汗がないことに違和感を感じたので実装を検討しました。

汗は主に育成、レース、ライブなど、ウマ娘が激しく動いた時の表現として使用します。一見あまり目立たないように見えますが、汗の有無で印象がかなり異なります。

汗は頭部に汗オブジェクトを配置して、任意のタイミングで表示しています。ウマ娘によって顔の形状が異なるため、汗の位置は完全に一致しているわけではありません。しかし、どのウマ娘でも共通の演出を行う必要があるため、ある程度同じ配置となっています。これにより、激しく動いた時の必死さや、疲労感の表現ができるようになりました。

臨場感を出す工夫のまとめです。動機は、プレイヤーがレースやライブに没入できるように目に見える違和感を減らすことです。濡れは専用のテクスチャに置き換えて表現しています。衣類に染み込んだ水分の表現は、環境マップの効果を強めて再現しています。汚れは、発現するタイミングをマスクテクスチャのRGBチャンネルで制御しています。汗は、オブジェクト配置を共通化し、任意のタイミングでウマ娘の表現の幅を増やしています。臨場感を出す工夫についての発表は以上です。

これからもカッコかわいいウマ娘たちを作り続ける

渡辺:本セッションのまとめです。ウマ娘キャラモデル班とは、「カッコかわいいハイクオリティなキャラモデルをつくる」ことをミッションに掲げるチームです。

ウマ娘のモデル仕様は、ハイクオリティなキャラモデルを担保できるような基本仕様を目指しました。そして、基本仕様は開発途中に起きた問題に対応し、アップデートしました。

ウマ娘ならではの表現については、自然な感情表現のために、フェイシャルのバリエーションを豊富にしました。さらに臨場感を出すために、濡れ、汚れ、汗といった表現を取り入れました。

私たちキャラモデル班は、長期にわたる開発期間の中で度重なるアップデートを繰り返し、ウマ娘ならではの表現を模索しました。エンジニアやテクニカルアーティスト、イラストレーターなど多くの部署と協力して、現在のキャラモデルのクオリティに到達しました。

私たちはこれからもカッコかわいいウマ娘たちを作り続けます。以上で本セッションを終了します。ご清聴ありがとうございました。