【インターンシップ接触編1期生】インターンシップで受けている指導について

こんにちは。

インターンシップ~接触編~第1期生でプログラマー志望の池田です。

現在私たちが進めている「つなげて りんくる」の作業の近況は、
他のメンバーが書いたブログでかなり触れられているので、
今回の私のブログではちょっと趣向を変え、私自身の現在の作業に加えて、
“インターンシップで受けている指導の体験”をお伝えしようと思います。

私の作業状況

指導の体験により自分が「どう変わったか」を説明するため、まずは私の今の作業を報告します。

私は現在、ボス以外の敵キャラを担当し、その実装と修正をβ版までに間に合うように、
プログラムをひたすら組んでは動かし、修正している日々です。

▲敵の挙動を打ち合わせ中!時間がすぐ過ぎていきます

当初、敵のボスにも取り組む予定でしたが、私が他の作業に手間取ったため、
他のプログラマーである安藤さんにお願いすることになり、
ボス以外の敵キャラに注力することになりました。

欲を言えば、一旦「やる」といった以上、できれば自分で仕上げたかったのですが、
このプロジェクトは私一人だけのものではありません。
プロジェクトを完成に進めるために、チームで話し合い行った、重要な判断でした。

このように『できたらやる』ということは、日常や学校ではいざ知らず、
ゲーム開発の現場においては通用しないことを痛感しました。

「やるのか」・「やらないのか」の二択に関しては、
学校ではひたすら努力して取り組むことが美徳とされていますが、
ゲーム開発では、「決めきれないこと」こそ、避けるべきこととみなされています。

「やらない(=カットする)」という判断自体は悪いことではなく、
むしろ、残り時間を鑑みて「やる」「やらない」を速やかに判断し決定することが、常に求められます。

こういった考え方は、インターンシップ開始直後には、正直あまり持ち合わせていませんでしたが、
後述する指導担当の方々からアドバイスを受け続ける中で、自然と自分たちで自覚するようになりました。

インターンでの生活と指導

ここで、私たちインターンシップ生の一日全部の流れ、というものは
これまでのブログであまり触れられていなかったようなので、
この後の指導体験を語るための準備として、簡単に説明します。

<一日の流れ>

9:00  ゲーム制作スタート!
 ▼    朝のうちに、指導責任者の曽我さんへ「今日の作業予定の報告」を交代で行います。
 ▼
12:00~13:00  休憩・昼食
 ▼
 ▼
18:00  定時・作業終了
       生活指導の松枝さんに、定時前に書いた日報のチェックと、
       各メンバーの作業の進捗状況への指摘・アドバイスをしていただいて一日が終わります。

こういった流れで、私たちインターンシップ生は、正社員の方と同様の9:00~18:00、
休憩を除き8時間みっちりとゲーム制作に取り組んでいます。

この作業時間中に、プログラマー指導担当でもある曽我さんと、ゲームデザイナー指導担当の磯部さんに、
仕様や企画に目を通していただき、アドバイスをもらいます。

また、インターン後半では、制作途中のプログラムの動作を見ていただき、
挙動のおかしいところ・改善した方がいい箇所についてアドバイスをもらっています。

そのほか、何か見て欲しいもの(仕様書、プログラムのソースコード など)がある人は、
各自アドバイスを求める、というのが一連の流れです。

コードレビュー

上記の「各自がアドバイスを求める」機会に、曽我さんに何度かプログラムを見ていただきました。

初めのころは、内心

『(…まだ書きかけだし、だいぶゴチャゴチャとした、
他人の書いたソースコードを急に「見て」と言われても困るのではないだろうか…)』

と思っていましたが、そこは私の完全な思い過ごしでした。

曽我さんは数分(1~2分です)でソースコード数百行に目を通され、

  曽我さん  「…なるほど。ここの変数と処理の役割は?」
  池田     「こうこうこうで、敵のジャンプのループを制御しています」
  曽我さん  「それなら、この処理の中で持った方が、プログラムの各役割が明確になるよ」
  池田     「確かに…これのせいで、自分でも修正しづらかったみたいです」

というように、ものの数分で直すべき個所を見つけ、指摘されます。

こうなると不思議なもので、
それまで「これで良いだろう」と自分で納得していたコードが
ひどく不自然なものに見えてきて、
違和感を覚え始めます。

そして、直すべき個所が急に見えてきます。

▲C++は奥が深いです・・・

このように、これまでのみんなのブログでも触れられてきましたが、
一連のゲーム制作が学べることに加えて、
各自の志望職種に応じて第一線のプロの方からアドバイスを頂けることも、
今回のインターンシップの大きなメリットといえます。

職種だけでなく、ひとりひとりの現在の力量に応じても、適切なアドバイスを頂くこともできます。

私たちが作業をしている部屋にゲームプログラミングの本が揃っており(貸出もできます)、
「今の自分のレベルから抜けだすために、読んでおくべき本」を
曽我さんに10冊ほどピックアップしていただき、
「読み方と、どのくらいの期間をかけて読むべきか」もアドバイスをいただきました。

▲「これだけは読んだ方がいい!」とピックアップされた本がこの中にまだまだあります。
  通勤電車の時間が長いので、首が痛くなるほど読んでいます。

最後に

今回で私のブログは最終回となりますので、最後にこの1ヶ月半の経験をまとめますと…

今回のインターンシップでは、上記のようなひとりひとりへの最適なアドバイスを頂けるほか、
生活指導担当の松枝さんからも、ゲーム開発現場ならではの、書籍やインターネットでは手に入らない
珠玉のアドバイスも受けることができました。

さらに、私の知らなかった技術を伝えてくれた仲間たちにも、非常に感謝しています。

また、“学生”と“プロ”の考え方・アプローチの違いというものを、まざまざと見せつけられた日々でした。

同時に、インターンシップ接触編のテーマでもある「ゲームづくりを学ぶ」ということを、
身をもって知らされる日々でもありました。

想定外な修正作業、だんだんタイトになっていくスケジュールと作業量、
そして予想以上に早く過ぎてゆく残り時間…。

さらに、開発途中での仕様変更、担当者の変更・異動など、生活指導の松枝さんが
「実際の開発現場ではよく起こること」
と言われたことが色々と起こりました。

こういったことからも、ゲーム業界は華やかなことだけではないということを実感しました。

▲新たに見つかった不具合の修正に悩む池田

このインターンシップに来る前、一人で勉強していた頃の自分では、皆目見当もつかなかった
『ゲームプログラマーになるための十分な力量・資質とはどういうものなのか』
ということを知ることができました。

そして、未だ遠くではありますが
『それを身に付け、実際に作品を制作する』という目標を見定めることができました。

この実習期間が終了したら、ここで得たゲーム制作に関する知識をもとに、
ひとつ作品づくりを始めてみようと思います。

このブログを見てくださっている方々の中には、
ゲームクリエイター志望の方や、インターンシップへの参加を考えられている方も多いと思います。

このブログがそういった方々のご参考に少しでもなれば幸いです。

できることなら、将来、ゲーム開発の場でお会いしましょう。