エントリーレベルのゲームプログラマーの典型的な日々のタスクは何ですか?[閉まっている]


64

私が知りたいのは、ゲーム業界の職場での大学院プログラマの毎日の義務は何ですか?主にコーディング、分析、設計、または何ですか?

ありがとうございました。

PS私は現在大学の2年生で、ゲームプログラミング、特にゲームプレイ、ツール、またはUIプログラミングの専門に取り組んでいます。

回答:


103

私の経験に基づいて(米国では、プロトタイピングをやめたばかりで、約50人のチームだったプロジェクトに大学を雇い、その後キャンセルされました。その後、4年間でさらに2つのゲームを作りました。約200人の開発者ベースでそこにいました)、

  • おそらくプログラミングの時間の約50〜70%を費やすでしょう。今回は、本当におもしろい機能を作れるような「楽しいもの」と、クラッシュしたものを見つけようとして8時間メモリダンプをじっと見つめている時間を含めます。たぶん、その25〜50%が実際のキーボードで座って、ゾーンでの長時間のプログラミングです。
  • バグのトリアージ、バグのトリアージに関するミーティング、スケジューリング、他のプログラマーおよびプロデューサー向けの高レベルのドキュメント、電子メール、プロジェクト/会社全体のステータスの更新など、会議および管理タスクでさらに15〜25%。これは、自主性の程度に依存します-自主性がない場合は、独自のスケジュールを設定する時間を短縮できるため、プログラミングにより多くの時間を費やすことができます。スケジュールをもっと細かく制御すると、もっと面白いことに取り組むことができるかもしれませんが、そのために時間を費やす必要があります。
  • 別の15〜25%は、デザイナー/アーティストを支援し、実際にゲームに関するクリエイティブなミーティングに参加し、ゲームデザインドキュメントを最新の状態に保ちます。

あなたは賃金等級に上がると、あなたがプログラミングを費やす時間は、おそらくしようとしている下がります。より多くの管理上の決定を下し、チームの経験の浅い人々を支援するために呼び出され、ドキュメントとコード/アーキテクチャのレビューに多くの時間を費やす必要があります。プラス面としては、おそらくプログラミングの品質が上がるでしょう。より興味深い機能(およびよりイライラするバグ)に取り組むことができます。

デザイナーやアーティストの支援に費やす時間が増減するか、実際に変わらないかは、作業する領域によって異なります。UI、ツール、およびゲームプレイで作業する場合は、その時間が増えることを期待してくださいより多くの経験を積むと、50%以上になります。上級デザイナーと一緒に座って、新しいツールを計画およびデモし、既存のツールをどのように使用するかを確認します。残念ながら、今回もプログラミングのスケジュールから外れています。


覚えていないが、トレーニングパートナーが実際にあなたに物事を教えるときに役立ちます
;

@coderanger:私たちのどちらもトレーニングパートナーから多くの助けを得たとは思いません。;)

26

Joeが提起した高レベルのディスカッションポイント以外にも、注意すべき点がいくつかあります。

  • 通常は、リードがタスクの割り当てに使用する何らかの種類のバグ追跡ツールまたはタスク追跡ツールを使用します。時々それらは同じです(すなわち、FogBugz)。バグリストは出版社を通じて作成され、タスクリストは内部wikiにある場合があります。あなたはただ座って何でもし始めるのではなく、あなたのタスクが指示されるでしょう。
  • タスクを見積もるように求められることがあります。FogBugzなどのシステムを使用する場合、これは暗黙的です。あなたの責任の一部は、あなたがマイルストーンなどをどのように軌道に乗っているかを見る目的のためにどれくらいかかるかを適切に推定するために使用できる部分に、より高いレベルの機能を分割することです/すべきです
  • 多くのスタジオが、よりアジャイル/スクラブスタイルの方法論に移行しています。バーンダウンチャートの更新(つまり、タスクYにX時間を費やし、Z時間で完了すると予想すること)はかなり一般的です。毎日のスタンドアップミーティングはおそらくもう少し一般的です。いずれにせよ、あなたが取り組んでいるものについてある程度の可視性を提供します。
  • バージョン/ソース管理を使用します。スタジオが大きいほど、Perforceを使用する可能性が高くなります。その基本を理解する必要があります(ファイルのチェックアウト、ファイルのコミット、ローカルマージの競合を解決できること)。ブランチの分岐とマージを理解するように求められることもあります。一部のスタジオは、すべての開発者がローカルブランチを取得できる場所で動作し、ブランチを必要なだけチェックインしてマージできます。他のスタジオ(当社)には「メインを壊さない」ポリシーがあるため、更新を確認し、簡単にテストして、何も破損していないことを確認してからチェックインする必要があります。そのポリシーと人々は常にたわごとを破り、それは非常に迷惑であり、あなたはそれを回避する方法を学ぶ必要があります。
  • コードレビューはかなり一般的です。コード部門全体である場合もあります。私たちのチームは、チェックインのレビューに一対一のコードバディアプローチを使用しています。いずれにせよ、他の人のコードの重要な分析を提供するように求められることを期待すべきです。

11

私は、非常に大規模なゲームに取り組む4か月のインターンシップを終えました。私がそこに着いたとき、プロジェクトは非常に遅い段階だったので、私がしたことのほとんどはバグ修正でした。とにかくそれは私の時間のかなりの部分だったでしょう...機能を設計または開発するためのゲーム開発の経験がないのではなく、バグを修正するためにコーディングの経験を使用します。

私がしたことの多くは、IT関連のことでもありました。内部ツールの開発は大きなものでした。ゲーム開発に直接役立つものもあれば、以前は手動で行っていたものを自動化するものもありました。そしてもちろん、MicrosoftのGames for Windows Liveインストーラーを含む他のツールのバグ修正。

プレイテストはもう1つのかなり大きな部分であり、プレイテスターに​​プッシュされるビルドの一部を作成する責任もありました。ゲームの世界のバグを追跡するのは非常に難しく、原因を突き止めるには多くの作業が必要です。

私はゲームやグラフィックを専門としていなかったので、おそらくあなたがしたどんな仕事もこれよりもあなたの専門知識に関係しているでしょう。しかし、それがあなたにアイデアを与えることを願っています。


4

私の最後の年のプロジェクトは、HTML5キャンバス要素です。現在、過去2か月間インターンシップに取り組んでおり、既存のフラッシュゲームをHMTL5キャンバスに移植する必要があります。

ここで私の人生について話すことができることから、それは大変難しいことです。要件チームには非常に具体的な要求があります。どのマウスクリックが何をしているのか、ゲームにどのように効果が適用されるのか。どんなに厳しい要求であっても、プログラマにとってどれほど困難であっても、すべての要件を実装した後に対処する必要があります。バグ報告が始まります。神はその迷惑です。それは本当にあなたの神経に乗り始めます。クリックで1ピクセルのオフセットは、あなたの人生を地獄にすることができます、私を信頼してください!気まぐれや空想に対応できるように、ポジショニングおよびインタラクションスペース全体の新しい構造化を意味する場合があります。

しかし、それも楽しいです!:)フラッシュが自動的に行う機能をどのように再作成できるかについて、コミュニティと対話しながら、1つの本当にスマートな機能を書くことの喜び。それのすべて。その仕事をしたことを後悔しないように。

それで、私の仕事の通常の日は、機能を実装する仕事に来るでしょう。機能を可能にする1つの機能を調査および検索します。そのコードから地獄をテストする。そのコードを修正します。そのコードを最適化する方法についてコミュニティと話し合う。それから私が感じるものを書くことは地球上で最高のプログラムです:P

結局のところ、私が成し遂げたことに大部分は満足していますが、時々、私がどこでもっと良くできたのか、違うことをして、それを完璧にすることができたのかについても緊張していました。私はまだ初心者の段階にあるので、将来どうなるかについてアドバイスすることはできないかもしれませんが、今のところは..私は最もクールな仕事をしなければならないと思います:)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.