【インターンシップ~接触編~1期生】伝える事の大切さを知り、自分も成長しよう!
こんにちは、インターンシップ~接触編~第1期生でプログラマー志望の山口です。
インターンシップが始まってから、あっという間に1ヶ月が過ぎました。
現在、私は各画面(タイトル画面、クリア画面、ゲームオーバー画面など)の処理を担当しています。
下の画像は、現在のタイトル画面です。
「はじめる」を選択するとゲームが始まり、
「おぷしょん」を選択するとゲームの細かい設定が行え、「おわる」を選択するとゲームが終了します。
このように、画面内でプレイヤーが選択した項目によって次に何をさせるかということを、
プログラムで組み込む作業をしています。
今回の記事では、こういった作業を進めていくなかで、私が実際に気を付けていることなどを、
社員の方々から頂いたアドバイスを交えつつ、皆さんにお伝えしていきたいと思います。
皆が“納得できる”説明を
私達は「必要な人数で考え、全員で決定する」ということを徹底しているので、
まずはその箇所を担当している人同士で、仕様の確認など細かいところを話し合います。
その後、他のメンバー全員に見てもらい、話し合って決定し、
最終的にまとまった意見をゲームデザイナー志望の加藤さんに「指示書」「仕様書」としてまとめてもらっています。
普段よく話し合う内容としては
・この仕様で問題がないか(見た目、分かりやすさ、ゲームとの関係性)
・もっとこうした方がいいのではないかという改善案
といった内容が多いです。
ゲームデザイナーの方の意見をそのまま受け入れるのではなく
「もっとこうすれば良くなるのではないか」という意見も必ず言うようにしています。
もらった仕様をそのまま作るのでは、チーム制作の意味がありません。
お互いに、改善案など「もっと面白いものをつくるためにはどうすればいいか」ということを常に考え、
意見を出し合うことで、より良いものになっていきます。
こうして固まった案を他のメンバーにも“この案に決まった過程を含めて”見てもらいます。
そのとき、私達は
・何故このデザイン、仕様になったのか
・ゲームとの関係性はどうなっているのか
という「何故こうなったのか」というところまでを説明して、皆に納得してもらえるように提案をしています。
この過程と皆の納得がないと、後に矛盾や誤解が発生し、
ゲームのコンセプトから軸がずれるという事態が発生してしまうからです。
チーム制作では、
皆にしっかりと正確に情報を伝えたうえで納得してもらう、
というのがとても重要です。
作業効率を考えてプログラムを組む
この過程を経て、プログラムでの実装に移るわけですが、
私がはじめに行っていた実装方法は
① 仮組みでも良いので動きを組み込み、
② ゲームデザイナーの思う通りの動きであるかというのを確認し、
③ 更に他のメンバー全員に見てもらう
というやり方でした。
▲コンティニュー画面をゲームデザイナー志望の加藤さんに見てもらっています。
ですが、インターンシップの指導担当である曽我さんから
「プログラマーが思う最高の形を作ってから見せるようにすること」
というアドバイスを頂きました。
これは、この方法だと
「少し作っては見せてというのを繰り返す作業になるので、余計な手間が生じるという欠点がある。
もっと作業の効率を上げよう」
ということで頂いたアドバイスでした。
このアドバイスを受け、私は早速
自分の思う最高の形を作る
ということを実践することにしました。
実際には、細かい動きや、ボタンを押した時の操作感と見た目の分かりやすさ等、
どうすればいいかを最大限自分で考え、組み込みました。
今の段階では修正などはなく、仕様としても問題がない出来となっています。
しかし、修正や仕様の変更というのは後に必ずあるはずです。
そこで、「一度作ったら修正が難しい」プログラムではなく
、もう少しだけ変えたい、という細かい指示にも柔軟に対応できるよう、
今後のことも考えたプログラムを組むようになりました。
そして、自分自身はもちろん、他のメンバーが後で見直したときにも、
どこに処理が書いてあるかが分かりやすいように、気を付けてプログラムを書くようになりました。
「これは一体何をする処理なのか」というのが一目見て分かるようになっていると、
いちいち本人に確認するという作業も削減できますね。
こういった小さな心がけ一つでも、作業を大きく効率化することができます。
開発の“プロ”からのアドバイス
今回だけに限らず、サイバーコネクトツーのインターンシップの良いところは
「プロの方に制作物を見てもらえる」「プロの意見が聞ける」
というところです。
開発スタッフの方から「普段ゲームをつくる際に、何に気を付けてプログラムを組んでいるのか」
「自分だったらこう組む」といった意見も頂くことができます。
人によってプログラムの組み方に違いはありますが、色んな人に聞いくことで、
自分に合った組み方などを見つけて行くこともできます。
私が、実際に開発スタッフの方に、制作しているゲームとプログラムを見て頂いたところ、
プログラムの中に同じような処理を書いてしまっている部分がいくつかあったのを指摘されました。
そこで頂いたアドバイスは、
・同じ処理はまとめて、何度も書かないようにする
・いかにソースコードを少なく書けるかを意識しながらプログラムを組む
ということでした。
特に2つ目のアドバイスは、具体的に言うと以下のような内容でした。
・どうすればまとめることができるのかを考える
・他の人が使うときに、いかに少ないソースコード量で処理が行えるかを考えていく。
そうすることで、自然ときれいなソースコードが書けるようになり、
常に考えて実行に移すので自然と技術も付いてくる、と言われました。
このアドバイスを頂いた後、実際に言われたことに気を付けながらプログラムを組むようになりました。
結果としては、後で見直した時に以前と比べ格段に分かりやすくなり、修正箇所も探しやすくなりました。
ちょっとしたことでも、気を付けて一つ一つ実践していくことで、
自分よがりなプログラムを組むことは、自然となくなっていくと思います。
これを読んで、プログラマー志望の方は「自分の組み方はどうだろう」と、一度振り返って見てみるのも良いかも知れません。
私たちと同じくゲームクリエイターを目指している人がいたら、
このブログを通じて一緒に成長していけたら、とても嬉しいです。
ここまで読んで下さった皆様ありがとうございました。
私のブログは今回の記事で最後となりますが、まだまだインターンシップは続きます。
チーム制作の方も益々忙しくなってきていますが、最後まで全力で面白いゲームをつくるために頑張ります!