Cygames展 Artworksを支える技術 – Artworksの展示とインタラクティブ体験を両立したShadowverseの世界観表現


こんにちは。開発運営支援/先端コンテンツチーム所属の朝日田です。
2023年9月2日から2023年10月3日まで、Cygames展 Artworksを、上野の森美術館で開催しておりました。
Cygames展 Artworksは、ゲームに登場するデザインやイラストを集めた展覧会です。私たちの原点である第1作『神撃のバハムート』から近作に至るまでのさまざまなゲームを、そうしたアートワークから、ひもといていった展示会です。
おかげさまで大盛況の後にクローズすることができました。訪れた皆様にはこれまでのCygamesの歴史をご堪能頂けたかと思います。

Artworksの展示とインタラクティブ体験と両立し、Shadowverseの世界観を表現する

Cygames展 Artworksの展示の中には、Shadowverseを題材としたデジタルコンテンツがありました。第28弾カードパック「Academy of Ages / 遥かなる学園」までに登場したほぼ全てのカードがプレミアムカードとして表示されます。ゲームの中でカードを見ることはできますが、トークンカードを含めた全てのカードが同時に展示されている光景はなかなか壮観だったかなと思います。

また、このデジタルコンテンツの最大の特徴は、デジタルのインタラクティブ性とArtworksとしての展示を両立させている点にあります。アナログカードゲームとデジタルカードゲームの違いとして、カードの絵柄が動くこと、カード自体が変化することが挙げられます。この特徴を活かすため、単純に全カードを展示するだけではなく、ユーザーがカードの変化を実際に触って体験していただけるよう、タッチディスプレイを活用したインタラクティブな展示を実現しました。プロジェクターを用いて映し出す方法も考えられましたが、ディスプレイに比べて発色が低く、また触るときに手の影が映像にかかり、見えづらくなるといった弊害もあります。ユーザーに最高の見栄えと最高の体験を提供するため、今回はディスプレイでの展示となりました。ちなみに、本コンテンツはShadowverseと同じくUnityで制作しました。

今回の技術ブログでは、このShadowverseのコンテンツについて、期間中に常設されるコンテンツであるということにフォーカスして話して行こうと思います。

本コンテンツの仕様について

まずは、コンテンツの簡単な仕様について説明します。

  • ディスプレイ1枚あたり、横13枚縦18枚の234枚が展示される
  • ディスプレイは全部で18枚
  • ディスプレイとPCは1対1で設置する
  • タッチディスプレイは10点マルチタッチが可能
  • 全てのカードがタッチ可能
  • フォロワーはゲーム内の進化演出を行う
  • スペルアミュレットは使用時の演出を進化演出に近しい形で表現する
  • 10時から17時まで稼働し続ける

このような仕様でコンテンツは制作されていました。
それでは一つずつ解説していきたいと思います。

ディスプレイ表示の基本仕様

  • ディスプレイ1枚あたり、横13枚縦18枚の234枚が展示される
  • ディスプレイは全部で18枚

こちらは、会場の間取りやディスプレイに表示されるカードの大きさなどから、最大数のカードを表示できるように調整した結果、ディスプレイ枚数やカード枚数が決定しました。
Cygames展 Artworksのコンセプトとして、今までのCygamesの系譜を表現しており、Shadowverseもその流れを表現するために、可能な限り今までリリースした全てのカードを載せたいという思いからこのような仕様になりました。

  • ディスプレイとPCは1対1で設置する

これはディスプレイ自体の仕様でもありましたが、ディスプレイ1枚に対してPCを1台ずつ付けて稼働していました。構成自体を簡略化するためにも、ディスプレイとPCのセットを18台分スケールさせるほうが運営の面でメリットがあります。もし不具合が発生した場合でも、発生したセットのみを入れ替えられるので、素早く対応することが可能なためです。バイナリも全て同じものを使用しています。設定ファイルを変更するだけで対応のディスプレイに合わせた表示に切り替えるような仕組みを入れていました。

マルチタッチディスプレイを使用したカードの動的表現

  • タッチディスプレイは10点マルチタッチが可能

ここからは少し技術的な内容にフォーカスしていきます。今回採用したディスプレイは、FW-75BZ40HSTP-75IR200で、10点まで同時にマルチタッチが行えるようになっています。そのため、アニメーションが行われているカードが10枚まで綺麗に大きく見えるようにアニメーションするようになっています。
具体的にどのような内容だったのかというと、ディスプレイを上下に領域をわけ、上下にカード5枚を一番大きくなるようにあらかじめ指定した座標に移動するようになっています。上下どちらに移動するのか、またあらかじめ決められたどの座標に移動するのかは、タッチされたカードのから一番近い指定位置に移動するようにしています。ただこれだけですと、タッチするたびに常に同じみためになってしまうため少し飽きが出てしまいます。そこで、画像のようにAパターンとBパターンを用意し、それをランダムで切り替えることで常に同じ見た目にならないようにしています。

またこのパターンも上の領域と下の領域で別々に管理しているので、組み合わせとして4パターンの見た目に変化するような仕組みを設けています。

パターンの選出方法は、タッチされたカードが上下どの領域にあるのかを判定し、その領域でアニメーションが行われていなければ、ランダムによりAまたはBパターンを選択します。選択した後、例えばAパターンになった場合、Aパターンの指定座標のうち一番近い座標を選択します。移動先の領域ですでにアニメーションが行われていた場合、採用されているパターンの中で、まだ使用されていない座標の中で一番近い座標を選択するようになっています。この結果、隣り合ったカードを選択しても同じ座標が選択されることはなくなり、指定された位置に移動するようにしています。
このような仕組みにより、まるでいろんなところにカードが動いていくかのような表現になり、カードを繰り返しタッチしても楽しいコンテンツにする一端を担うことができました。

アニメーションとインタラクティブ性の追求

  • 全てのカードがタッチ可能
  • フォロワーはゲーム内の進化演出を行う
  • スペル・アミュレットは使用時の演出を進化演出に近しい形で表現する

Cygames展 Artworksのコンセプトから、進化の系譜を表現するためにも、フォロワーを選択すると進化アニメーションを表示したいという思いは開発の初期から存在していました。また、タッチできるからには全てタッチできるようにしたいという思いからも、スペル・アミュレットをタッチした際にはアニメーションを新しく作成することで、全てのカードがタッチできるようにしました。
フォロワーの進化アニメーションはゲーム内の演出内容をほぼそのまま再現しています。しかしながら、スペルやアミュレットはフォロワーの進化のように手前に移動してくるようなアニメーションはありませんでした。そこで手前に移動するアニメーションはフォロワーと同じにしつつ、手前に移動した後はスペル実行のエフェクトを参考にして新規でアニメーションを作成しました。なお、再び現れるときのエフェクトはトークンとして生成される時のエフェクトだったりします。

ちなみに、フォロワーの進化アニメーションはゲーム内のものを再現した結果、展示していたカードの中で1枚だけ演出が違うものがあったりしました。

安定動作とメモリ管理に注目した展示コンテンツの運用

  • 10時から17時まで稼働し続ける

展示は途中で開場してから閉館するまで、止めてしまったり、再起動させるようなことは可能な限り避けなければなりません。そもそも展示中はバックヤードで動作しているPCに触ることもできなかったりします。通常のゲームであれば、何かエラーが発生した場合再起動によって回復できますが、展示コンテンツはそもそも再起動がNGです。そのため、常に安定して動作し続けることは展示コンテンツにとっては何よりも重要になります。
安定して動作するということは、メモリリークも起こさず、常に同じクオリティで動き続けるということになります。メモリリークを起こさないようにするにはしっかりとしたメモリ管理が重要になってきますが、今回は全て起動時にロードしてしまうことで展示中のロードを行わないようにし、メモリ管理を行う必要性自体を排除しました。ロードやリリースを行わなければメモリリークも発生しないという展示ならではの手法かと思います。
通常のゲーム開発であれば、シーンのロードを挟んだタイミングなどでリソースの開放を行ったり、極端な場合は全てのデータを破棄して完全にデータをリセットすることで、メモリ管理を行っている場合が多いかと思います。しかし今回の展示では、リセットすら行わないようにしています。ロードはメモリがあふれる可能性がでますし、リリースは開放し忘れて残ってしまう可能性がでてしまいます。ですが、ロードもリリースもどちらも行わないのであれば、この可能性を排除することができます。これは、PCスペックを制作側で指定でき、展示コンテンツだけが動作する環境という、展示ならではの動作環境だからこそできることです。

起動時にロードするデータは、カードの絵柄やサウンド、エフェクトを全てロードし、それをずっと使いまわしています。実は今回の展示で利用するエフェクトやサウンドはそこまで多くなく、基本的には同じ演出をカードごとに少し切り替える程度なためこれが実現できました。また、ロードしたタイミングが実質最大のメモリ使用量になるため、起動直後に問題なく動作すれば、その後ずっと安定して動作し続けるという副次的な効果もありました。

おわりに

いかがでしたでしょうか。全ての情報をお伝えできたわけではありませんが、展示されるコンテンツといった、ゲーム開発とはまた少し違ったものの片鱗を感じていただけたら幸いです。
実際に現地にご来場いただいた方には、実は裏ではこんなことが考えられていたのか!といった2度楽しめる記事になっていればうれしく思います。

私たち開発運営支援の先端コンテンツチームでは、刺激的で革新的なデジタルコンテンツを作り出し、世界中のユーザーに感動を届けるため、最先端の技術を駆使しゲーム以外のエンターテイメントコンテンツを開発しています。本記事をご覧いただき興味を持っていただけましたらこちらをご確認ください。

私たちと一緒に、エンターテイメントの未来を切り開いていきましょう!