こんにちは。プログラマー志望の山田真一です。
今回のFUKUOKAゲームインターンシップでは今自分の持っている力を全部ぶつけていきたいと思っています。
インターンシップ初日は、毎週月曜日に行われているサイバーコネクトツーの全スタッフが参加する朝礼に参加して、社員の皆様の前で簡単な挨拶と自己紹介をしました。
社内の雰囲気に少々緊張するとともに身が引き締まりました。
そしてその後、今回の課題の内容を聞きました。
今回の課題は「PONG2012」です。
PONGについて簡単に説明させていただくと、バーを操作してボールを打ち合うピンポンゲームです。
ボールが相手のバーを越えると自分の得点になります。
次の図を見てもらえれば大体わかるのではないでしょうか。
そのPONGを今つくったらどうなるか?というのが今回の課題です。

まず、チームのみんなでそれぞれ1つ企画を出し合い、話し合いながらどんなゲームをつくるか決めることになったのですが、なかなかゲームの仕様が決まらず、あっという間に1週間近くも経ってしまいました。
PONGとかけ離れすぎている、ただ3Dにしただけで目新しさがない、など、3つも没案を出し、少し時間をかけすぎた気もしますが、チーム全員が納得し私自身もこれは面白くになるに違いないと思ったので結果的にはこれでよかったと思います。
私たちが作ることになったこのゲームの特徴ですが、まず「フィールドが円形であること」です。
ただ、それだけでは2012年版のPONGだとは口が裂けても言えないですし、そもそも既にそういったゲームがあるので、スコアの計算に特徴を持たせました。
それは「ボールの軌跡によって三角形を作りその三角形が得点になる」というもので、作った三角形の数と取った面積で勝敗が決まります。

私のイメージではより大きい面積が取れるように打ち返す、また逆に相手が先回りすると予想して小さい三角形を確実に取りに行く、といった、対人の駆け引きが面白いゲームにできたらいいなと思っています。
ようやく仕様が固まってきていよいよプログラマーの出番です。
もちろん皆で意見出しをすることなども重要ですが、やはりプログラムをしてこそプログラマーといえるのではないでしょうか。
私はゲームを制作しやすくするためのプログラムの基盤づくり、アーティストが使うエフェクト作成ツールづくり、そしてゲームで使用するステンドグラスのプログラムによる表現をすることになりました。
私の他に2人プログラマーがいるのですが、その人に私が作った基盤を見てもらったところ、評判は上々でした。
ゲームのつくりやすさに直結する部分なのでここは特に気合を入れていきたい部分です。
エフェクト作成ツールはアーティストからの要望で作ることになりました。
はじめは3ds Maxという3DCGツールで作ったエフェクトを、ゲーム内で表示させたいとのことでした。
ですが、そのデータを読み込むプログラムを作るのに少々時間がかかる、また、どれくらい時間がかかるかわからなかったので、私が簡単なツールを作り、アーティストにそのツールを使ってエフェクトを作成してもらうことで、ゲーム内でエフェクトを表示することになりました。
最後にステンドグラスの表現ですが、これは円形のフィールドに三角形を作っていくとステンドグラスのような感じになっていくということと、そのとき出ていたゲームイメージの一つが神々の遊びだったので神々しくしようという話になりました。
イメージはこんな感じです。
具体的に言うと、これを3Dモデルや絵を描いてそれを表示するのではなく、プログラムによって三角形を描き、光を反射しているかのように見せるなどして、ステンドグラスのような質感にしようというものです。
できるだけこのイメージ以上になるように頑張りたいです。
もうすでにインターンシップが開始して2週間程度が経ちましたが、もうこの時点ですでに、ここに来なければ学べないことがたくさんありました。
例えば、プログラムでは、ある一定のラインを超えるとほぼ独学になってしまうのですが、その結果、知識に偏りが出てきてしまい、基本的なことができていないという事実に気付かされたことなどです。
その他、チーム制作をする上での進め方、今使用している最新技術や、流行の技術などをプログラマー指導担当の方など、さまざまな人に教えていただきました。
私の今の実力で、どこまでアーティストの、そしてゲームデザイナーのやりたいことを実現できるのか。
それはまた次回お伝えします。
次回は、サイバーコネクトツーのインターンシップ生のレポートをアップします!
<関連記事>
■ 【2012春】サイバーコネクトツー/プログラマーコース 山田真一さん(最終)