ライター:ゆん https://x.com/yun_blueDaisy

CEDEC2026にて、任天堂の森洋介氏と深山智史氏が「ドンキーコングバナンザ 全てが壊せる世界の構築、破壊を実現するボクセル技術」と題したセッションに登壇した。本作最大の特徴である「地形も敵もNPCもすべて破壊できる」というゲーム体験を、エンジニアリングの観点からどう作り上げたのか。ボクセルの基礎技術から、破壊の手応えを生むエフェクト・サウンド設計、キャラクターへの応用、そして地形制作のワークフローまでが語られた。

ボクセルとは何か、地形はどう生まれるか
ボクセルとは、データが3次元グリッド状に並んだデータ構造であり、2次元のピクセルに対する3次元版にあたる。各ボクセルに「0=空、1=中身あり」という値を持たせ、その境界にポリゴンを貼ることでメッシュが生成される。単純に処理するとブロック状の見た目になるが、本作では自然な地形の質感を出すため、頂点位置を滑らかに調整できる「デュアルコンターリング」というアルゴリズムを採用した。頂点位置を制御するベクトル情報を持たせることで、丸みだけでなくエッジの立った自然な地形を生み出すことに成功したという。

ボクセルが持つ4つのデータ
本作のボクセルには、密度・ダメージ・マテリアル・濡れという4種類の代表的なデータが格納されている。密度はパンチによる破壊でどれだけ削れたかを0〜255の値で表し、メッシュの形状を決定する。ダメージは硬い素材を何度パンチすれば壊れるかを記録し、値に応じてヒビ表現に反映される。マテリアルは見た目や遊びを決める情報で、たとえば氷を溶岩に投げ込むと溶岩が岩に変化するといった演出もこの値の書き換えによって実現している。濡れは地形を掘り進めるほど内側が湿っていくように見せるための値だ。
メモリとROMサイズの最適化
1ステージあたりのボクセル総数は1億個を超える一方、実際に中身が存在するのはわずか7%程度。加えて本作は破壊によるデータ変更が頻繁に起きるため、単純なメモリ削減だけでなく更新コストやキャッシュ効率も両立させる必要があった。そこで8×8×8ボクセルを1チャンクとして管理するシンプルな構造を採用し、更新コストを抑えている。さらにチャンクごとに「空か否か」を1ビットで持たせ、データがある部分のみ圧縮することで、あるステージでは圧縮前15MBのデータを8MB程度まで削減したという。

破壊の”手応え”を生むエフェクトとサウンド
ボクセル地形はどこをどう壊すか毎回異なるため、エフェクトやサウンドはあらかじめ決め打ちできない。そこで破壊の瞬間に「場所・体積・方向」といった”どう壊したか”の情報と、”何を壊したか”というマテリアル情報をリアルタイムに読み取り、それに応じたエフェクトとサウンドを生成する仕組みを構築した。貫通したパンチとしなかったパンチでエフェクトの飛散方向を変えたり、あと1発で壊れる際にドンキーコングのボイスを力の込もったものに切り替えたりするなど、細部の演出が破壊の快感を底上げしている。
800種類を超えるマテリアルすべてに専用の破壊エフェクトを用意するのは非現実的なため、「質感」と「テクスチャー」を分離するアプローチを採用した。ゴロゴロ・サラサラ・ベチョベチョなど9種類の質感テンプレートを用意し、そこにボクセルの見た目と同じテクスチャーを貼り付けて放出することで、膨大な種類のマテリアルすべてに違和感のないエフェクトを実現している。
装飾物の破壊と自動生成の仕組み
地形の密度感を高めるために配置される装飾モデルも、破壊対象になる。街灯や木箱などの大きな装飾はパンチで直接破壊され、草花や石畳などの小さな装飾は地形破壊に連動して壊れる仕組みだ。2000種類を超える装飾物すべてに手作業で破壊表現を用意するのは困難なため、破片モデルをHoudiniで自動生成する仕組みを構築した。ボロノイ分割を基本としつつ、中空/中身ありの指定やパーツ単位での分割など、アーティストが調整できる設計にしている。その結果、装飾物の98%は自動生成で賄い、こだわりたい部分の2%のみを手作業で仕上げているという。挙動についても「飛んで跳ねる」「転がる」「舞う」など8種類のテンプレートを用意し、装飾ごとに割り当てている。
破壊が変える周囲の環境
建物のような閉じた空間を破壊すると、その場の環境演出も動的に変化する。たとえば吹雪のステージで小屋の中に入るとエフェクトや効果音が抑えられ、BGMや反響も変わるが、小屋を壊すと再び吹雪にさらされる。これは「遮蔽率」という値によって制御されており、ライティング計算にも使われているキューブマップの深度情報から、周囲がどれだけ地形に囲まれているかを低コストで判定しているという。

キャラクターへの応用
ボクセル技術は地形だけでなく、敵・ボス・NPCにも応用されている。敵は地形よりも細かいグリッド間隔のボクセルで構成され、パンチが当たった箇所だけをピンポイントに破壊できる。ボスは足場を生成したり、塩をかけると有機的に溶けていく表現に活用されている。NPCでは複数のボクセルデータ間をモーフィングさせることで、リズムに合わせて踊るような表現も実現しているという。
地形制作のワークフロー
最後に紹介されたのが地形制作の流れだ。まずレベルデザイナーがキューブやシリンダーなどのプリミティブ形状をブーリアン演算で組み合わせ、素材を割り当てながら大まかな地形と遊びを作る。ある程度遊びが固まった段階で、地形アーティストが象徴的な形状をポリゴンモデルからボクセルへ変換し、素材ごとの見た目を作り込み、装飾モデルを手動・自動で配置していく。この分業体制により、遊びとして機能する地形を効率よく作り込むワークフローが確立されている。

まとめ
このセッションで一番印象に残ったのは、派手な新技術ではなく、地味な数値の積み重ねだったことだ。
ボクセルが持つデータは、密度・ダメージ・マテリアル・濡れのたった4つ。それだけなのに、地形の破壊も、パンチの手応えも、NPCが踊る動きまでもがそこから生まれている。
しかもマテリアルは800種類以上、装飾物は2000種類以上ある。これだけの物量に、1つ1つ手作業で対応するのは現実的ではない。だから任天堂は「質感とテクスチャーを分ける」「破片モデルを自動生成する」といった、数を増やしても破綻しない仕組みを先に用意した。
『ドンキーコングバナンザ』の「これも壊せるのか」という驚きを支える仕組み。本作の構造を理解することは、物量の多い大作を作ることを志す開発者にとって、実用的なヒントが詰まっているだろう。



コメント