ゲームプログラマーで一番大変なところを経験者8人に聞いてみた
バグ探し
ゲームプログラマーで大変なことは2つあります。
まずは“バグ探し”です。どんなゲームにもバグが起きない状態で遊ぶ事が出来ています。その裏では、プログラマーの努力が存在しています。
同じステージの端っこを何回も回ったり、何もない壁にぶつかり続ける事、レースゲームなら道なき道がないかなどを徹底的に調査しなければいけません。見つかればプログラムの改善をして、また同じように作業をして、の繰り返しになります。これは、果てしない時間が費やされます。完成への集大成ですが、精神的にも体力的にもしんどいです。
もうひとつは“ヒットゲームを生み出せるか”です。いくらストーリーがおもしろくても、それを表現できるグラフィック・音楽がないと意味がありません。アプリでも同じですが、どの客層をターゲットにして、コンセプトは何にするかなどといった構想を練る事が非常にしんどくなります。
完成してもそれが売れなければ、烙印が押されてしまいます。ヒットメーカーにならなければ仕事も回ってこないので、そのプレッシャーが大変です。
プログラミングはとにかく頭がこんがらがって今自分が何をしているのかもわからなくなってきます。
私がまだ経験浅いというのも理由の一つかもしれませんが、ひたすら画面に並ぶ文字列が混乱させてきます。その文字のひとつひとつに意味があり、少しでも間違えてしまうとプログラムとして機能しなくなってしまうので、間違いを見付ける作業も大変です。
経験の長い先輩プログラマーの方々はまず間違えることもなく、本当に尊敬しています。私が作成したプログラムの間違いも一瞬で指摘していただけます。どうしたらそのような技を身につけられるのか分かりませんが、そうなりたいと思っています。
自分のミスのせいで完成が遅れてしまい、みなさんに迷惑をかけてしまうことが多々あることが何よりも一番大変です。チームで作業しているので私だけの責任でなく、連帯責任となってしまいます。早く一人前になって、皆さんに迷惑かけず、立派なプログラムを書けるように日々勉強していますがくたくたです…。
ゲームのプログラマーを何度も経験したことがあり、共通して苦労する点があります。
多くの方はプログラムを作るのが大変ではと思われます。私の場合は作ること自体はさほど大変ではありません。大枠の流れとアレンジを加えるだけで済むため、負担も少なく作業が滞ることはありません。
一番苦労することはプログラムの隙間からできたバグの修正です。プログラムを作る際、出来るだけバグが生まれないように作っているため、私の中では完成したときにバグがない100%の仕上がりを想定しています。
それだけ注意しても生まれるバグは色んなパターンがあるため、発見がとても難しいですし、予測できないプログラムの矛盾から生じたバグのため修正がとても大変です。一つを修正するとプログラムの一部を修正、それを繰り返す中で新しいバグが生まれることもあります。また大幅に修正するとプログラム自体が破たんしてしまう可能性もあります。
また実際にゲームを進める中でわかるバグもあるため、作ることよりも修正が私にとって大変な仕事です。
ゲームプログラマーのお仕事で一番大変なことは、「チームでお仕事をしなければいけないこと」だと思います。
熟練のプログラマーさんからしたらたいした問題ではないと思うのですが、わたしはまだ新人なので間違ったプログラミングをしてしまったり、小さなミスを見落としてしまうことがあります。その際、わたしが一人でやっている仕事だとまた自分一人どうにかすればいいのですが、チームでの作業となるとわたし以外の人にも迷惑をかけてしまうことになります。わたしがしてしまった小さいミスが原因で作業が中断してしまったりすることだってあります。
一緒にお仕事をさせていただいている方々は優しい方ばかりなので怒ったりすることはありませんが、やはり迷惑をかけてしまっているなと落ち込むことが多いです。周りに迷惑をかけないため、自分のスキルアップのためにも早くこのお仕事に慣れて、一人前のゲームプログラマーになれたらいいなと思っています。
忙しい
ゲームプログラマーをしていて一番大変だったのは、無謀なスケジュールでの仕様変更でした。
私が経験したプロジェクトはほとんどがソーシャルゲームなのですが、運営中のゲームの場合配信の日程が決まっていたり、ゲーム内に告知が出てしまっていたりなど、柔軟なスケジュール変更が出来ない場合が多々あります。配信が遅れてしまえば当然ユーザーの信頼を失ってしまいますし、その後の売上にも影響してしまいます。
下請け等で作業をしている場合は、先方OKをもらって作業していたはずなのに出来たものを見せたら配信前日に仕様変更の連絡が来た、ということもありました。もちろんその修正対応を行うにも、もともと作業する予定だった業務があるわけで、その両方に支障が出ないように優先順位をつけて仕事をしなければなりません。
作業時間を確保するためには長時間の残業が当たり前になります。また、せっかくゲームを良くしようと実装をしたものでも、スケジュールの関係で不要になったり作り直しになったりするのは、仕方のない事だと理解していても少々残念な気持ちになります。
一番大変なことは、締め切り直前の追い込みです。私たちは、デスマ(デスマーチ)と呼んでいました。
休日の無い時が、2,3か月続くのは当たり前です。5,6か月続くこともあります。
私が居たことのある大手のゲーム会社で、開発終了後に休日出勤した分の休みをまとめていただけるのですが、最低でも1ヶ月は休めるほどでした。
特にプログラマーは、いつバグがでるか分からないので、プログラムの作業が無くてもデバッグをしながら待機する必要があります。電車通勤だったころは、終電は当たり前、自転車通勤になってからは日付が変わるのも当たり前、場合によって泊まり込んで待機することもあります。
私の居た会社では、仮眠をとることは出来ますが、寝る場所を特に用意されていませんでした。その為、自分の机の下に潜り込んで、冬の寒い時には段ボールを下に敷いたりして横になっていました。ちょっとした、路上生活者のようです。
それとこう言っては何ですが、テレビなどで残業100時間で過労死とかって聞くと何で「その程度で?」って思うぐらいになりますよ。でも、何故続けられたかというとゲームを作るのが好きで楽しかったからです。
ニーズを満たし続けること
ゲームプログラマーの仕事で、一番大変なことは、利用者の要望(ニーズ)を満たし続けることです。一般的に、利用者はすぐに物事に飽きてしまいます。それを満たし続けるために、新しい機能やサービスを展開し続けることが必要となります。
簡単に新機能やサービスを追加すればいいと書きましたが、これが、ものすごい大変なこととなります。新しいものを「0」から生み出しことは、そんなに簡単ではないです。
どのようなゲームを見ても、似たり寄ったりの機能になりつつありますし、斬新な新機能やサービスを生み出したりしても、すぐに他のものに真似されてしまったり、少しだけ方向性を変えたりで、いたちごっこが永遠と繰り返されます。
例えば、利用者に課金をさせるを例にとると、なにかのアイテムやキャラクターを買わせるか、スタミナや利用時間を回復・延長させるくらいで、その他の方法は、正直言って、もうありません。
そんな状況下で、なんとか他のゲームと違った何かを生み出さないといけないことがものすごく苦痛になります。
ただ、単純にプログラムを書き続けることに専念できた時代は、終わってしまったのです。
パソコンを知らない世代が現場にいる事
ゲームプログラマーで大変な事、それは「パソコンを知らない世代が現場にいる事」。
様々なゲームコンテンツが存在し、かつてはファミコンや固定したゲーム機ではいと遊ぶ事が出来なかったゲームが、いまや世界中で気軽にプレイできるようになったご時世。
ゲームを創るクリエイター業に憧れを抱く方が多いと思われますが、現実はそんなに甘くはなかったりします。
ゲーム業界で最近問題になっているのが、やはり私の身近では、ゲーム制作を知らない団塊世代の割り込み就職などが挙げられます。
ゲーム制作を知らない団塊世代の割り込み就職とは何かと疑問を抱く方が多いと思います。
近頃のゲーム業界も様々な人材が就職する様になり、最近では定年退職した人材がゲーム業界に就職するといった信じられない現実が、嘘の様ですが、現実にあったりするのです。
でもそんな団塊世代の中年世代が、今の時代にあったゲームの製作が出来るわけもなく、どちらかと言えば営業やマネージメントなどの分野で働く方が多く、製作者側と営業側の温度差が、静かな問題として挙がっているのが現実でちらほらと他社でもあるみたいです。
ゲーム制作を知らない世代にも関わらず、あれやこれやといちゃもんを付け、製作者側の若手を批判する団塊世代の中途採用組は、今時の会社の雰囲気を理解しない風潮があります。
ゲーム制作をしている会社では、スーツ姿の人間はおらず、少数でゲームを制作している会社においては、服装規定が無い程に、意外にラフだったりします。
そのせいで会社はスーツが基本だと、ビジネスマナーをあれやこれやと言ってくる段階世代の温度差は、今の若手にとっては耳にうるさい小言だとも言われています。
何分ゲーム会社と言えば、基本がラフな格好が多く、泊まり込み作業なども含め、仕事着にあまり規定がない世界です。スーツにネクタイをつけない若者を認めない団塊世代の存在は、避けては通れない悩みとも言われつつあります。