GFF

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

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

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

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

プログラマーコース: 2015年1月アーカイブ

初めまして! 第17回FUKUOKAゲームインターンシップで
サイバーコネクトツーにインターン生として参加させて頂いています!
ゲームプログラマー志望の山下です!

1ヶ月という長いようで短い期間でしたが、今回のブログで最終更新になります。
そんな最終更新ブログは、今回行ったゲーム制作全体の流れ、
およびマスターアップについて書いていきたいと思います。

■参加動機
私はゲーム系の専門学校に通っています。
専門学校では、ゲーム制作に必要な技術を学ぶことが出来ますが、
実際のゲーム制作現場の雰囲気や本当に必要な技術がどのようなものであるかを学ぶことが出来ません。
今回は、実際に複数のゲームを制作しているサイバーコネクトツーにインターン生として参加し、
ゲームを制作しながら現場を体験したいと思い参加いたしました。

■今回のゲーム制作全体の流れ
今回のインターンシップでは、 企画作成 から α版の提出、マスターアップ といった流れでゲーム制作を行いました。

◆企画作成とは
どのようなゲームを制作するかを決定し、アイデアを形にする作業になります。
今回のインターンシップでは、指導担当者の方々に複数の企画を見ていただき、
どの企画でゲームを制作するかをメンバーで相談して決定しました。

◆α版とは
ゲームの肝となる"ここがこのゲームの面白い部分!"が実際に遊べる状態です。
このまま製作を続けるべきかどうかの判断をここで行います。
制作を続けるべきでないと判断されればここで制作作業は終了します。

◆マスターアップとは
ゲームの完成品を提出する事です。
バグを潰し、完全にゲームとして完成している状態です。

それでは、今回のゲーム制作の流れを実際のゲーム画面を用いて紹介していきます。

17thCC205_001.jpg
▲プロトタイプ時のゲーム画面

プロトタイプ時のゲーム画面になります。実際にゲーム画面に仮モデルを配置し、
プレイヤーがマウスポインタの方向に向くようにした物です。
大まかに今回作成しようとしているゲームの全体像が想像できる形になります。

17thCC205_002.jpg
▲α版提出時のゲーム画面


α版提出時のゲーム画面になります。
プロトタイプ版と比べると、プレイヤーの発射と敵の配置、移動処理、プレイヤーと敵との当たり判定など、
今回制作するゲームとして必要である要素が含まれています。
今回のゲームの肝である"コーンを全てポップコーンにする爽快感"を確認できる状態になります。
また、モデルを差し替えたことによって実際のゲーム画面に近づいてきました。

17thCC205_003.jpg
▲ゲーム完成時のゲーム画面

ゲーム完成時のゲーム画面になります。
ステージ毎に出てくるコーンの種類や動きが変わるようになり、プレイヤーが当たったときに
コーンがポップコーンとなって弾け飛ぶ演出が追加や、BGM・SEの追加などが完了し、
企画したゲームを完成させることが出来ました。


■バージョン管理について
今回のインターンシップでは、プログラマー担当の指導者からバージョン管理システム (TortoiseSVN)を使用して
管理するように指導を受けました。
バージョン管理システムとは、コンピュータ上で作成、編集されるファイルの変更履歴を管理するためのシステムです。

私は今までバージョン管理システムを使用してバージョン管理を行ったことがありませんでした。
分からない部分をネットで調べたり、指導担当の方に直接確認することで
段々と使いこなすことが出来るようになってきました。

バージョン管理システムを使用することで、複数のプログラムの結合作業や
前の状態に戻したい時に簡単に実現することが出来るので、とても効率的にチーム制作を行うことが出来ました。

上記にあるゲーム画面は、ゲーム完成後に特定のバージョンに更新してスクリーンショットを撮影した物になります。

バージョン管理システムを使用することで、こうした特定のバージョンでのスクリーンショットが欲しい時などに
とても役立ちます。

17thCC205_004.jpg
▲バージョン管理システムのリビジョンログ


■ゲーム完成!
1ヶ月間ゲーム制作を行い、遂にゲームを完成させることが出来ました!

17thCC205_005.jpg
    ▲タイトル画面                          ▲プロローグ画面


17thCC205_006.jpg
    ▲セレクト画面                          ▲リザルト画面

17thCC205_007.jpg
▲ゲーム画面


■最後に
FUKUOKAゲームインターンシップの1ヶ月間はあっという間でした。
実際に現場で活躍されている方々から直接指導していただけることで、
今まで知らなかった技術や方法などを知ることができ、プログラマーとして、とても良い経験をすることが出来ました。

学生として貴重なチーム制作が行えるだけでなく、現場で活躍されている方々から
直接指導も頂けるFUKUOKAゲームインターンシップ。
このブログで興味を持たれた方は、是非参加してみてはいかがでしょうか。

17thCC205_008.jpg
▲今回のインターンシップでの戦友達です。1ヶ月間ありがとう!

今回の参加者である戦友達とサイバーコネクトツーの皆様に感謝すると共に
これにてブログを終了させて頂きたいと思います。
最後まで読んで頂き、ありがとうございます!
それでは!


【関連ブログ】
【2014夏】サイバーコネクトツーでインターンシップ!(1)
【2014夏】サイバーコネクトツーでインターンシップ!(2)
【2014夏】サイバーコネクトツーでインターンシップ!(3)
【2014夏】サイバーコネクトツーでインターンシップ!(4)
【2014夏】サイバーコネクトツーでインターンシップ!(5)


>>もくじ
初めまして!
第17回FUKUOKAゲームインターンシップに参加させて頂いています、
ゲームプログラマー志望の松岡拓也です。

■参加動機
私は現在、ゲームプログラマーを目指して愛媛の専門学校に通っていますが、
私の住んでいる近くにゲーム会社などがほとんどなく、
実際にプロの方々にお話やプログラムのご指導頂けるという事で、
とても興味を持ち応募、参加に至りました。

■α版完成へ向けて
インターンシップが始まり、約2週間が終わりました。
企画も決まり、α版完成へ向けて、本格的にゲーム制作も始まりました。

17thCC204_001.jpg
↑ α版へ向けて、プログラムを書いている山下くんと梶原くん

プログラマーの指導担当の方々から、チーム制作する上でのコーディング規約や
ステージの情報などを外部ファイルから読み込むように改変するなど、いろいろな指摘を受けました。

指摘を受け、私たちも命名規則を決めてコーディングを行うようにしました。

<コーディング規約について>
コーディング規約とは、プログラムの際の決め事です。
1人1人好き勝手にプログラムを組んでしまうと、プログラムの統一性が失われて、プログラムが読みにくくなり
作業効率が下がったり、プログラムの結合の際にエラーなどが起きてしまう為、
プログラムを組む上でルールを決めようとしたものです。

命名規則もそのコーディング規約の一つで、プログラム上で使用される
変数や関数、クラス、ファイル名などの名前の決め方を統一するというものです。
それにより、データを共有している人がプログラムを見やすくなります。

▲コーディング規約(命名規則)を書いたテキストファイル

他にも、プログラム上で直接データなどの数値を決めるのではなく、
外部ファイルからデータを読み込んでプログラムに反映させるなど、プログラムの改変を行いました。

外部ファイルを読み込むことで、直接プログラム上の数値を変更しなくても
データを変更でき、なによりプログラマー以外の人でも簡単にデータ変更をできます。

私自身、チーム制作の経験が浅く、チームの人のことを考えてコーディングができていなかったので、
コーディング規約などを決めて制作を行う今回のチーム制作は非常に勉強になります。

最後に、α版完成まで時間もわずかですが、みんなとしっかり機能や、仕様などに沿って
ゲームが作れているか話し合って、いい作品がつくれるように頑張りたいです!

それでは、失礼いたします!


サイバーコネクトツー公式ホームページ


【関連ブログ】
【2014夏】サイバーコネクトツーでインターンシップ!(1)
【2014夏】サイバーコネクトツーでインターンシップ!(2)
【2014夏】サイバーコネクトツーでインターンシップ!(3)

初めまして!
第17回FUKUOKAゲームインターンシップで
サイバーコネクトツーに参加させて頂いていますゲームプログラマー志望の梶原です!

■参加理由
私は福岡の情報系の専門学校に通っており、ゲームプログラマーとしての就職を目指し日々勉強をしています!
しかし、私の通う学校の場合、プログラマー志望が多いため、ゲームを制作するとなると大体は一人での制作、
又はプログラマー同士でのチーム制作となってしまい、その中でも私はチームを組んで制作をした経験は
ほとんどありませんでした。
そこで、今回のサイバーコネクトツーでのインターンシップではゲームデザイナーやアーティストを含めた
複数職種によるチーム制作を実施するということを知り、プログラマーだけではない同じ志を持つ方々との制作を
行ってみたかったので応募しました!

■制作するゲームについて
「駆逐」というお題のもと、始まって一週間は全員で企画を練っていました。
結果、本ブログを書いている時点では、ほとんどプログラムを書いておりません!
ですが、ゲーム制作をする際、まずはゲームの内容を固める事が重要です。
事実、一人でゲーム制作をした際、いきなりプログラミングから入って、結局何がやりたいゲームなのか
分からなくなるという経験がありました。
ですので、そういう無駄が発生しないようにしっかりと企画を決めていく必要があります。

17thCC202_001.jpg
▲ゲームの仕様を固めるために話し合うメンバー達

■チームでの制作
今回参加しているメンバーは6名で、詳細は前回の記事を参照していただければわかると思いますが、
なんとプログラマーが3名もいます!
チーム制作経験が浅い私としましては、初めにメンバーと挨拶をしたときに3人もいるのかと衝撃を受けました。

3人での制作を始めるにあたって、まずは3人それぞれで担当作業の分担をすることになりました。
プログラマー全員が同じ作業をするような無駄を防ぐ為です。

17thCC202_002.jpg
▲役割分担中のプログラマー陣

今回プログラマーで行う作業としては

・ゲームの核となる部分(プレイヤーが動いたり、敵を倒したりする動作)
・ゲーム全体を管理する部分(各シーンの遷移など)
・各シーン(タイトル画面、ステージ選択画面、リザルト画面)
・ステージ作成ツール(敵はどのタイミングでどう出るのかを作るツール)
・敵の制御の組み込み
・サウンド

という項目になっています。
それを3人で分担するため、それぞれやりたいこと、できることを話し合いながら各担当者を決めていきました。

私が主に担当するのは

・ステージ作成ツール
・敵の制御の組み込み

ということになりました!

「ステージ作成ツール」とは、今回のゲームの場合で言うと、主に一つ一つのステージごとの
「背景」「BGM」「敵の配置」「敵の動き」をゲームプログラム内部とは別にツールで設定するためのツールになります!
特に、今回はゲームデザイナーがいますので、デザイナーの方にツールでステージを作っていただき
我々プログラマー陣がそれを組み込む、という形になります。

「敵の制御の組み込み」というのは先ほど書いた「ステージ作成ツール」を元に敵の動きを読み込み、
それをゲーム内部に組み込む処理です!
ツールを作った人がそのデータの内部について詳しいのは当然ですので、私が担当することになりました!

■最後に

まだ始まったばかりと思っていたのですが、インターンシップの期間は残り3週間、
ゲームを作る期間としては短いと思います!6人全員で頑張って良い作品を作りたいと思います!


サイバーコネクトツー公式ホームページ


【関連ブログ】
【2014夏】サイバーコネクトツーでインターンシップ!(1)
【2014春】サイバーコネクトツーでインターンシップ!(3)
【2014春】サイバーコネクトツーでインターンシップ!(4)


第18回FUKUOKAゲームインターンシップ、只今募集中! 詳細はこちらから。
( 申込み締切:2015年1月16日(金)必着 )

ポスター
第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        

プログラマーコース: 2020年1月: 月別アーカイブ