GFF

GFF事務局お問い合わせ
トップ > FUKUOKAゲームインターンシップBLOG

FUKUOKAゲームインターンシップBLOG

世界、そして、未来を見据える人たちが、福岡にいます。

GFF加盟企業をはじめとする福岡のゲーム企業の現場に入ってその仕事を体験する、ゲームインターンシップ制度。
ゲーム制作の厳しさ、楽しさを学んで、ゲームクリエイターになるきっかけをつかむ体験をブログ形式で報告します。

【2013春】サイバーコネクトツー:プログラマーコース 宮川隆浩さん(1)

|
初めまして!
プログラマーとして今回のサイバーコネクトツーのインターンシップに参加している宮川隆浩です。
この記事では前半2週間の出来事についてお話ししていきたいと考えています。


■志望動機
現在私はゲームプログラマーになることを目標に、京都にある4年制大学の情報系学科に所属し、
日々プログラミングの勉強に励んでいます。

情報系学科に所属しているので、講義を通してある程度の知識は身に付きますが、肝心のゲームプロラミングに
関する知識を得る機会は全くと言って良いほどありません。
なので、学内のゲーム制作サークルやプロジェクトに参加して、先輩方からゲームプログラミングについて
教わってきました。

お蔭様で簡単なゲームをつくれるようにはなりましたが、本職の方とお話出来る機会が無かったので
「現場について何も知らないまま勉強し続けて本当に必要な力が付くのか?」
「間違った知識を増やしているだけではないか?」と疑問に思い続けてきました。
そんな折、プロジェクトの先輩からFUKUOKAゲームインターンシップの事を聞き「これしかない!」と思い
参加することにしました。


■インターンシップ ‐1週目‐
他の方のインターンシップブログで既に書かれているように、インターンシップ最初の週は参加者全員で
毎日1,2時間程どの様なゲームをつくるか話し合ってきました。

企画が煮詰まるまではチーム制作のゲームについては何も出来ないので、ゲームデザイナー、アーティスト、
プログラマーはそれぞれの指導担当の方々から課題を出してもらい、会議以外の時間はその課題に
取り組んで来ました。

私たちプログラマーに課された課題は「インベーダーゲームをつくる」というものでした。
組んだプログラムは昼休みと終業後の1日2回、指導担当の方々に提出します。
その後、担当者から直接プログラムの問題点の指摘や、改善方法の指導を頂く。といった流れで課題を
進めていきます。

その過程で頂いた指摘は、基礎的なものから、基本的にチームで作業する現場ならではのものまで多岐に
亘りました。
そしてその多くが普段1人でプログラムを組んでいる自分では到底気付けなかったであろう問題でした。

インベーダーゲームに関する詳しい話は、同じプログラマー志望の原田君がインターンシップブログにて
書いていると思いますのでそちらをご覧ください。

2013spring_cc2宮川氏1.jpg
▲今回課題として制作したインベーダーゲーム



■インターンシップ ‐2週目‐
1週目でつくるゲームの概要が決定したので、いよいよ2週目はチームでのゲーム制作に入ります。
今回、プログラマーは私と原田君の2人なので、ゲームのプログラミングに入る前に2人で設計について話し合い、
分担箇所を決定しました。

ゲームを設計する過程で、ゲーム内の物体の描画(キャラクターやステージの画像を表示すること)や
当たり判定(物体と物体がぶつかっているかどうか判定すること)の管理方法についての意見が分かれ、
数時間議論をするという場面がありました。

議論の末、お互いの設計を納得するに至らず、争点となったゲームプレイ中の物体の描画や当たり判定の処理等は
全て原田君にお願いし、タイトル画面やメニュー画面の切り替え制御の処理と、プログラマー以外の人もステージを
改変できるようにするためのツールであるエディターの作成を私が行う、という形で
制作して行くことになりました。

当時はお互い納得の行く結論に辿りついたと考えていましたが、現在大きな問題となって
私たちの前に立ちはだかっています。(詳しくは私の次回のブログにてお話しします)


■エディター作成
ここで、今回私が作成を担当することになった「エディター」について、担当者の方から頂いた言葉を踏まえつつ
お話したいと思います。

2013spring_cc2宮川氏2.jpg
▲今回制作したエディター


私がエディターを作る事が決定した当初、期限を2日後に設定しようとしていました。

ところが、担当者の方に「特にエディターに関しては、遅れた場合チーム全体への影響が大きくなるので、
期限を短く設定する事よりも確実に達成できるよう設定することが大切である。」と教えられ、
期限を3日後に設定することにしました。

2013spring_cc2宮川氏3.jpg
▲本職の方から指導を受けています


エディター制作中、指導担当の方から使用者の事を想定しきれていない等、様々な足りない点を指摘される中で、
私のエディターに対する認識と現場の方のそれの間に大きな溝がある事に気が付きました。

それまでの私のエディターに対する認識は
「(プログラマーが)ステージのどこに何を置くか設定しやすくする為の道具」であって、
本来の「(ゲームデザイナーが)プログラマーを通さずにステージや配置物を自由に調整する為の道具」という
認識ができていなかったのです。

例えば、ステージ上にある足場の大きさや画像を変更する場合、前者は「(プログラマーが)コード内で読み込む画像の
名前と大きさの数値を変更する」必要がありますが、後者は「(使用者が)メモ帳等を使って画像の名前と大きさの
数値を変更する」だけで良いのです。

2013spring_cc2宮川氏4.jpg
▲前者の認識のまま作成したエディターのテキストデータ。座標と種類しか変更できない


つまり、ゲームデザイナーが素材の何かを変更したいと考えた時、前者の場合はプログラマーを通す必要性があり、
後者の場合はその必要はありません。

ゲームデザイナーが直接素材の大きさや位置を修正できるようにすることで、プログラマーの作業時間と、
ゲームデザイナーのそれを待つ時間を浪費せずに済むのです。

今までは1人でゲームをつくる事が多く、エディターを使うのは基本的に私だけだったので、
プログラマーの作業補助の為のエディターで良かったのですが、今回のようなチーム制作の場合は
誰もが使えるような設計にしなければ、エディターとして使い物にならないということを痛感しました。

この認識の差分を埋めるため、1日分伸びた期限をいっぱいまで使ってしまいました。
しかし、もし指導担当の方の助言を聞いていなければ期限に間に合わなかったことでしょう。

今回の件を通して、チーム制作を行う場合は、不測の事態が発生した場合でも確実に達成できるような
スケジュールを設定する事の大切さを痛感しました。

以上のような紆余曲折を経て完成したエディターは、以下のようなテキストデータを読み込むことにより、
ゲームの素材をテキストファイルから自由に追加、削除、編集する事が出来るようになっています。

2013spring_cc2宮川氏5.jpg
▲認識を改め、配置する画像の大きさや画像を変更、追加可能に



■最後に
他の方も書かれているかもしれませんが、今回のインターンシップでは昼休みと終業後に、
サイバーコネクトツーの社員さん方が働いているフロアを訪ね、質問したい事を質問したい人に
質問することが出来ます。
ただフロアを歩いているだけでも、PV内でだけ見たことのあるキャラクターや見たことのないキャラクターが
動いている画面を見ることが出来る上に、それらについて質問する事ができるので非常に楽しく、
貴重な経験が出来ます。

折角の機会なので色々な方にお話を頂戴しているのですが、多くの方から
「ゲームをつくろうと思うのならば普段から多くの作品に触れておくべき」といった助言を頂きました。
どうしても時間が無い場合は「そのゲームの売りが短時間で理解、体験できる」体験版をプレイすると良いそうです。
その際に注意すべき事としてはただ楽しむだけではなく、何故そのゲームがそのような仕様となっているかを
開発者の視点から考察する等、何らかの意図を持って取り組まなければ時間を浪費するだけに
なりかねないという事でした。


毎日が非常に濃い事と私が口下手な事が相まって少々長くなってしまいましたが、
今回はここらで締めようと思います。

また後日、後半2週間の分の記事を更新する予定ですので、そちらもぜひご覧ください。ありがとうございました。


サイバーコネクトツーのウェブサイトはこちら

>>【2013春】サイバーコネクトツー:プログラマーコース 宮川隆浩さん(最終)

ポスター
第26回応募要項

2020年3月

1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31