GFF

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

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

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

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

【2016夏】ガンバリオンでインターンシップ!(1)

|
こんにちは、プログラマー志望の仁科香苗と申します。

仁科_01.jpg
私が今回のインターンシップに応募した理由は、プロのゲームプログラマーはプログラムを作るときに何を意識しているのかを知っておきたいと考えたからです。


最初に与えられた課題は、ファイルの入出力でした。C言語でのファイルの入出力は経験がありましたが、今回はVisualBasicやPythonを使ってバイナリデータとして入出力するというものでした。初めて使うものだった為最初は戸惑いましたが、慣れるととても使いやすかったです!C言語やC++だけでなく他の言語も触ってみようと思いました。
次の課題は、会社独自のライブラリを使って3Dゲームを制作することでした。今まで使ってきたライブラリの使い方の先入観があり、ライブラリの解析の時は分からないことや仕組みに頭を抱えていました。しかし、ゲームを作っていく過程で便利な機能が多くとても使いやすかったです。

私が制作したゲームは、キャラクターを動かして流れてくるボールを避けたり当たったりしながら高得点を狙うというものです。流れてくるボールは、ダメージを食らうもの、スコアが増えるもの、ボールの流れが速くなるもの、体力が増えるものの4種類を用意しました。それぞれのボールの数やプレイヤーのパラメータ等をExcelで作成し、それをバイナリ化してプログラムで読み込んでいました。どれをバイナリ化するのが良いかアドバイスをいただきデータ化しました。データをプランナーも調整しやすいようにするという意識が薄かったので、データの扱い方について意識が変わりました。

また、3Dゲームの制作では、当たり判定の高速化をするように指示を受けました。どのような方法があるか調べていく中で、8分岐空間分割という方法を知りました。モートン順序というものを使って、空間を分割し番号を割り振っていくというものでした。勉強しながら実際にプログラムにしても、思うような動作にならずとても苦戦しました。

仁科_02.jpg
「自分なりのやり方でもよい」と助言をいただき、頭を整理してシンプルな当たり判定を取ることにしました。単純に空間を分割して番号を割り振るという方法です。キャラクターのいる空間の番号と、ボールのある空間の番号が一致したら当たりと判定するようにしました。このやり方は、ボール全てと距離を測って一定距離以内なら判定するという総当たりの方法よりもはるかに高速化することができました。実際に、ボールを10万個用意しプレイしたところ、目に見えて動きが変わっているのが分かりました。

その他に高速化で工夫した点は、描画処理です。ボールを10万個描画すると、あまりの重さに一切動作ができないという状況に陥ります。そこで、描画を開始する位置を決め、その位置よりプレイヤー側にいたら描画をするという方法で高速化を図りました。その位置より奥にあるボールは描画されないため、処理が大変軽くなりました。

成果発表会では、プログラマーとしてだけでなくゲームクリエイターとしての意見も頂くことが出来ました。プロの方から操作性についてご指摘をいただき、自分の視野が狭かったことを痛感しました。

仁科_03.jpg
ボールの加速によるキャラクターの移動速度や、キャラクターの動きに合わせたカメラの移動について改善の必要があるというものでした。このようなご指摘を受け、デバッグをするときの考え方を改めました。よりゲームとして面白くするには、操作性のよさについても考えながら作っていかなければならないということを学びました。

今回のインターンシップでは、「処理の高速化」について特に成長できたと思います!見やすいプログラムを心がけて、一つあたりのソースファイルや関数の中身が膨大な行数にならないよう気を付けていました。しかし、処理の高速化まではあまり考えていませんでした。今回、高速化に重きを置いてプログラムを作り、高速化がどれだけゲームに影響するかということを学びました。

今回のインターンシップで新潟から福岡に来て、初めは慣れない環境に不安がありました。ですがインターンの間、社員の方が相談に乗ってくださったり、福岡での過ごし方を教えてくださったりと大変親切にしていただき、インターンシップにしっかり集中することができました!

この3週間で学んだことや反省点を、今後の制作に活かします。また自分だけでなく、制作するメンバーや学校の友人にも共有し、より高レベルなゲーム制作をしていきます。

インターンシップでお世話になった社員の皆様、本当にありがとうございました。





第22回FUKUOKA ゲームインターンシップは1月16日まで募集受付中!
詳しくはコチラのページをご参照ください!
ポスター
第27回応募要項

2022年10月

            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