FUKUOKAインターンシップの期間は一ヶ月というなか、もう一週間が経ちました。
時間が経つのは本当に早いです。
今回は、私のインターンシップでの一週間についてプログラマー視点から書いていこうと思います。
一日目は、全体ミーティング(朝礼)に参加して社員の方全員の前でご挨拶をさせて頂きました。
大勢の人の前での挨拶には慣れていなく、声も震えてしまいましたが皆さん真剣に聞いて下さり、温かく迎えて下さったのでとても嬉しかったです。
その後、会社内の見学をさせて頂きましたが、こうやって日々、株式会社サイバーコネクトツーのゲームが作られているんだと思うと興奮が止まりませんでした。
現場の空気に触れる、というのは中々できない事なのでこの様な機会を頂けるのは本当に凄いと改めて思いました。
その後プログラマー3人に対し、インターンシップ指導担当の方から課題を頂きました。
課題は「ゲーム作りに必要なベース作り」です。
そして今回の課題は、何もない状態から作る様に言われました。
つまり学校等から貰っているライブラリ等も使わないで、自分が一から勉強を行ってプログラムを組むという課題です。
私は"バリバリ組める"という方では無かったので今回の課題には苦労しました。
初日に関しては「ウィンドウ表示」を行いました。
まずウィンドウが無いと何も始まらないので、まずそこから手を付けました。
とりあえず必要であろうものをノートに書き出し、本当に基本的な所からやっていきました。
こうやって組んでいくとDirectXに関してはただ使っていただけで、関数やスケルトンの事を何も理解出来ていなかったんだと悔しく思いました。
ゲームにとって必要なものは何なのか?というのが自分の中でハッキリと決まらなくて、
もやもやする日々が続きました。
私はこの最初の一週間、まずプログラムの一つ一つを理解しようと思い勉強から入りました。
何も理解しないままコピー&ペースト等で形にしたとしても、自分の力にはならないと思ったからです。今まで私は、学校等から配布させる関数やスケルトンプログラム等を使って制作を行っていました。それでは駄目だと思い、まず"理解する事"から入って行こうと決め課題を進行していきました。
『調べる』・『理解する』・『理解できたら組み込む』の繰り返しを行った一週間でした。
そして、ウィンドウ表示は出来ても次に何を入れるべきかにも迷い、時間を大幅に取ってしまいました。
結果的には、今回のチーム制作のテーマは2Dか3Dかのどちらを主に使用するか分からなかった為、まずエフェクトやスコア等私自身が要るだろうと思ったものを表示出来る様にしようと思い、画像の読み込みと表示を出来る様にと組み込みを行いました。
テクスチャ情報読み込みや、読み込み時のサイズを自動的に取って来るにはどうするか等もプログラマー3人で情報をやり取りし、組み込む事に成功しました。
出来上がりを指導担当の方に見ていただいたのですが、やはり「スピードが遅いから、これからもっと効率よく組んでいけるようにね」と指摘を頂きました。
そしてもうひとつ、コメントにも少し指摘をして頂きました。
コメントは書けばいいというものではなく、書いていることへの補足程度で構わないと言われました。
私自身コメントに頼り過ぎていた部分が多く、コメントを見なければ書いているプログラムの意味が分かりにくい状態でした。
コメントだけではなく、関数名や変数名も自分以外の人が見てもちゃんと理解してもらえる様に書くのが大事なのだととても勉強になりました。
とても基本的な事かも知れませんが、ゲームというのは個人ではなく大勢の人が集まって作るので、こういった事もとても大切なんだと気付きました 。
来週からはスピードアップを目指して、確実に一歩一歩進めていける様に頑張りたいと思います。
続きはまた次回に。
========================================
========================================
【他のインターンレポートも読んでみる】