>   >  新人講師がゼロから挑むUnityによる人材教育:No.13:メカニクスとレベルデザインの接続
No.13:メカニクスとレベルデザインの接続

No.13:メカニクスとレベルデザインの接続

ゲーム専門学校の新人講師がUnityを勉強しながら、「ゲームのおもしろさとは何か」について授業を行う泥縄式レポートの第13弾。水先案内人になるのがユニティ・テクノロジーズ・ジャパン(以後、ユニティ)から提供中の無料教材「あそびのデザイン講座」だ。今回は3つの異なるサンプルを通して、次第に複雑なレベルデザインを行なっていく授業の模様をレポートする。

TEXT_小野憲史 / Kenji Ono
EDIT_尾形美幸 / Miyuki Ogata(CGWORLD)

レベルデザインの実践道場

皆さんこんにちは。ゲームジャーナリスト兼、専門学校東京クールジャパン(旧東京ネットウエイブ)非常勤講師の小野憲史です。学校はすでに夏休みに入り、非常勤の気楽さで一息つかせてもらっています。ただ、休みの間も教務の先生方はオープンキャンパスに、企業向けの学生作品発表会に、就職活動の指導にと、大忙しの様子です。特に本校では今年度から留学生が急増したため(1年生の約7割が留学生)、例年にない苦労があるようです。いやホント大変だと思います。

一方で非常勤講師の良さは、授業の準備と実践だけに集中できること。そこで前期は「あそびのデザイン講座」をベースに、自分なりに使いやすいサンプル教材を作成して、学生にどんどんレベルデザインに挑戦してもらうことを目標に掲げました。その上でグループ演習を通してゲームを構造的に分析し、レビューする目を養ってもらいました。そこで鍵を握るのがMDAフレームワーク。前期の授業スライドをこちらにまとめましたので、よろしければご参照ください。

▲MDAフレームワークと世界観/ペルソナの関係

※「48時間で作るゲームの企画を3時間できっちり決める」(簗瀬洋平/ユニティ・テクノロジーズ・ジャパン合同会社) より筆者作成


連載 第7回でも触れましたが、「あそびのデザイン講座」の第5回〜第11回(ピンボール編)は、米MITのマーク・ルブランらによって論文化され、世界中で引用されているMDAフレームワークの考え方に近しいものがあります。ゲームのルール(メカニクス)が変わると、プレイヤーの行動やゲームの展開(ダイナミクス)が変わり、プレイヤーが受ける感情(エステティクス)に影響を与える......ざっくり説明すると、この三要素の関連性でゲームを分析するというものです。

ただ、実際のゲーム開発ではメカニクスだけでダイナミクスが変化するわけではありません。鍵を握るのがレベルデザインです。レベルデザインとは、ゲーム開発でマップやステージの形状をつくり、そこにエネミーやアイテムを配置し、様々なイベント(鍵を入手して扉を開けるなど)を組むなどして、プレイヤーに特定の体験を提供するための空間をデザインする役職のこと。FPS(一人称視点シューティング)の流行と共に欧米で専門職化が始まり、ゲームデザイナーの登竜門とされることもあります(※)。

※ 詳細は2018年4月公開の記事「海外のゲームスタジオはデザイナーをどのように募集するのか? 課題サンプルも大公開〜GDC 2018レポート(2)〜」を参照。

実際、同じメカニクスでも、レベルデザインのちがいでおもしろさが変化するのは、『ブロック崩し』におけるブロックの配置などからも明らかでしょう。『ブロック崩し』には「ボールがブロックに当たると、ブロックが消えてスコアが加算され、ボールが跳ね返る」というメカニクスが存在します。ここから「ブロックの上に適切な空間をつくると、ブロックの上側にボールを送り込むことで、一気に消すことができ(=ダイナミクス)、結果として気持ちいい(=エステティクス)」という関連性が導かれるからです。

▲授業ではUnityを使って2つの『ブロック崩し』ゲームをつくり、ちがいを体験してもらう時間も設けました。こんな風にゲームエンジンの操作に慣れると、ちょっとした教材を手軽につくることができるようになり、便利です

※参考サイト
【Unity 入門】【チュートリアル】ブロック崩しを作る


このことはまた、ゲームにはメカニクスに適したレベルデザインがあること。そして、レベルデザインはメカニクスが確定した後で行われるべきであることを意味しています。個々のレベルデザインの都合に合わせてメカニクスを変更すると、ゲーム全体のレベルデザインにまで、影響を及ぼしてしまうからです。「あそびのデザイン講座」のピンボール編も同様で、毎回スコアやタイマーといった異なるメカニクスの実装法が解説され、それに合わせてレベルデザインを行うやり方が紹介されています。

ただ昨年度の経験から、普通に授業を行うと「メカニクスごとに適したレベルデザインを行う」というポイントが、少しボケてしまうだろうな......という危惧がありました。また、ピンボールだけでなく、ランゲームや対戦ゲームなど、様々なゲームのレベルデザインに挑戦してもらいたいという思いもありました。そこで第5回〜第10回までの授業を2回ずつに分け、それぞれで異なるサンプルを提示し、次第に複雑なレベルデザインに挑戦してもらうことにしました。


・第5回〜第10回までの授業内容

6月07日 第5回 ピンボールワークショップ1(あそびのデザイン講座 第5回〜第11回)
6月14日 学校行事で休講
6月21日 第6回 ピンボールワークショップ2(あそびのデザイン講座 第5回〜第11回)
6月28日 第7回 ランゲームワークショップ1(あそびのデザイン講座 第12回〜第14回)
7月05日 第8回 ランゲームワークショップ2(あそびのデザイン講座 第12回〜第14回)
7月12日 第9回 対戦球転がしゲームワークショップ1(オリジナル)
7月19日 第10回 対戦球転がしゲームワークショップ2(オリジナル)

▲授業風景

こちらの意図を軽やかに裏切る作品が登場

それでは各回の振り返りを進めていきましょう。ピンボールワークショップでは、事前に下記の6種類のサンプルを用意しました。はじめに各々のシーンファイルを一通り遊んでもらい、それぞれの体験のちがいについて考えてもらいました。その上で、どれかひとつを学生に選択してもらい、それに適したレベルデザインを自由に行なってもらいました。その後、メカニクスとレベルデザインの関係性について、MDAフレームワークを引用しつつ解説しました。

▲6月7日 第5回 ピンボールワークショップ1で提示したサンプル

※ あそびのデザイン講座 第5回〜第11回、【Unity 入門】【チュートリアル】ブロック崩しを作る、書籍『楽しく学ぶ Unity2D超入門講座』(森巧尚/マイナビ出版/2019)を基に筆者作成


・6種類のサンプルの概要

[1]目的を提示しない
 →プレイヤーがミスするか、飽きたら終わり
[2]ボールを打ち返した回数でスコアが加算される
 →ミスするまでに獲得したスコアで他人と競える
[3]ボールを当てて破壊すると、スコアが加算される対象(ブロック)を加える
 →[2]と同じだが、プレイヤーがインタラクションできる要素を増やすことで、より没入感が高まる
[4]カウントアップタイマーの導入
 →画面上の全てのブロックを消すまでの時間を競う。いわゆるタイムアタック
[5]回転ブロックの導入
 →ボールの反射における多様性を高めると共に、タイムアタックにランダム性をもたせる
[6]カウントダウンタイマーの導入
 →一定時間内でどれだけブロックを消せるか競う。
 [4]や[5]とのちがいは、スコアがタイム起因か、それともブロック起因かという点

▲6月21日 第6回 ピンボールワークショップ2の課題提出


もっとも結論から言うと、一番おもしろかった作品は、こちらの意図を軽やかに飛び越えたものでした。上で紹介している課題(動画)の最初に登場する白偉亨君の作品で、画面全体が白い格子で覆われています。ラケットを左右に移動させると、それに伴って格子も移動し、隙間からわずかにゲーム画面が見えるというもの。遊びにくいこと、このうえないのですが、なぜか不思議な味があります。プレイヤーの視界をさえぎるメカニクスをコードを書かずに実装しており、これに適したレベルデザインを考えるとおもしろくなりそうです。

ただ、全体的に今ひとつこちらの狙いが伝わりきらない結果となりました。もっとも、これにはサンプルのクオリティの低さも関係しています。「タイマーがゼロになったり、ブロックが全部消えたりしても、ゲームが停止しない」「ラケットの当たり方でボールに変な力が加わってしまい、スピードが急変する」「ボールが垂直や水平に移動し続け、ゲームの継続が不可能になる」など、いろいろな粗がでてしまいました。デバッグの重要さを改めて痛感した演習でした。

次ページ:
ランゲームで一気にクオリティが向上

その他の連載