導入
皆さん、こんにちは。今日は引き続き個人的な経験をお話します。
ゲームをプレイしたことのある友人は、ゲームがスタンドアロン ゲームとオンラインゲームに分類できることを知っています。
スタンドアロン ゲームは通常、高品質のAAA 傑作として知られており、ネットワークに制限されず、独立した実行環境を特徴としています。
オンライン ゲームは、グローバルな相互接続、リアルタイムの同期、およびソーシャル インタラクションの特性を利用して開発されます。
したがって、ゲーム開発にはクライアントとサーバーの2 つの部門が存在します。
では、クライアントゲーム開発者として、サーバー側の開発スキルを学ぶ必要があるのでしょうか?
まずは著者の個人的な体験を見てみましょう
1. 行ったことのある人の体験談
著者が卒業してゲーム開発会社に働き始めたとき、彼はU3Dインターン、つまりクライアントゲーム開発者で、2,000 ドル相当のインターンでした。
当時、同社は大規模なMMORPGモバイルゲームを開発していましたが、MMO とはオンラインで大規模なマルチプレイヤーを意味し、当然サーバーサイドの開発が必要になります。
私はゲーム エンジンの学習に集中していましたが、まさかサーバーサイドの開発にも参加する日が来るとは思っていませんでした。学校で学んだおかげで、サーバーサイドのロジック開発には何の困難もありません。
結局のところ、ロジックを書くのにそれほど専門的な知識は必要ありません。会社がリソースを節約するためにデュアルエンド開発を奨励しているかどうかは言うまでもなく、それを真似できるだけで十分です。
そこで筆者は実戦の過程でダブルエンド展開をマスターした。
では、クライアントサイド開発とサーバーサイド開発の違いは何でしょうか?
2. フロントエンドとバックエンド
一般に、フロントエンドには効果と経験が必要で、バックエンドには厳密さと安定性が必要です。
1.クライアント
クライアント側開発はフロントエンド開発と呼ばれることがあり、ゲームのパフォーマンスとプレーヤーへの視覚効果の表示に焦点を当てます。
主な仕事は、ゲーム リソース (画像、テキスト、アニメーションなど)を結合し、プレーヤーのデバイスに表示することです。
このプロセスでは、ゲームのスムーズさと安定性を考慮する必要があるため、ゲームのパフォーマンスも最適化する必要があります (リソース読み込みの最適化、メモリ管理など)。
2. サーバー
サーバーサイド開発、つまりバックエンド開発には、厳密なゲーム ロジックが必要です。
例えば、バックパックシステムでは、プレイヤーが小道具を使用する際に、小道具が存在するか、小道具が冷えているか、小道具の数が十分であるかなどを考慮する必要があります。
すべての手順を厳密に行う必要があります。そうしないと抜け穴が生じ、データの問題が発生します。
では、フロントエンドのためにバックエンド開発を学ぶ必要があるのでしょうか?
3. 個人的な選択
フロントエンドのためにバックエンド開発を学ぶかどうかについては、実際にはキャリアプランと選択であり、フロントエンド開発とバックエンド開発は浅いものでも深いものでも構いません。
バックエンドの利点を学ぶ
-
フルスタック開発: バックエンド開発を学ぶことで、ゲーム全体の開発を担当できるフルスタック開発者になることができます。この総合的なスキルセットは、小規模なプロジェクトやスタートアップで特に役立ちます。あなたを総合的な技術リーダーに任命することができます。
-
より包括的な理解: バックエンド開発を理解すると、ゲーム全体のアーキテクチャとデータ フローをより深く理解できるようになり、バックエンド チームとの連携が向上します。
-
キャリア開発の幅を広げる: フロントエンドとバックエンドの知識を持つ開発者は競争力が高く、キャリア開発の幅広い選択肢を持つことができます。プロジェクトや組織によっては、フロントエンド開発者がバックエンドの作業にも関与する場合があります。一般的には、自分のための道を残しておいてください。
-
独立開発: バックエンド開発を学ぶことで、フロントエンドだけでなく完全なオンライン ゲームを独立して開発できるようになります。これは個人のプロジェクトや起業家にとって貴重なスキルです。
バックエンドを学ぶ必要はありません
-
フロントエンド スキルに重点を置く: フロントエンドテクノロジー スタックとエコシステムに興味があり、この分野をさらに深く掘り下げたい場合は、フロントエンド スキルの学習に重点を置く方が適切かもしれません。
-
チームのコラボレーション: 大規模なチームでは、フロントエンドとバックエンドの役割分担が明確であり、専門性の度合いが高くなります。フロントエンド領域に特化し、プロのバックエンド開発者と協力することを好む場合もあります。
-
時間が限られている: テクノロジーの学習には時間とエネルギーが必要ですが、現時点で時間が限られている場合は、フロントエンド分野のディープラーニングに重点を置いた方が良いかもしれません。
-
個人的な興味: 個人的な興味は、研究の方向性を決定する重要な要素です。バックエンド開発に強い興味がない場合、学習プロセスが退屈に感じる可能性があるため、フロントエンド分野に集中することをお勧めします。
どう思いますか?
4.私の意見
1. 新人ゲーム開発者
フロントエンド開発に重点を置き、フロントエンドの知識を浅いところから深いところまで体系的に学びます。
2.テクニカルディレクターになりたい
フロントエンド コンテンツ (ゲーム エフェクト、メモリ管理、パフォーマンスの最適化) を徹底的に調査し、同時にバックエンド コンテンツ (ネットワーク プログラミング、同時実行性、サーバー アーキテクチャ) も徹底的に調査します。
3. 独立系ゲーム開発者
オンデマンドで学習し、実装されるゲームコンテンツを通じて対応する知識を学習します。時間は貴重です。やるべきことだけを行います。目的は、技術スタックを強化することではなく、高品質の独立したゲームを制作することです。
4.その他
バックエンドの需要が急増しているため、多くの製品では、バックエンドプログラミング言語がフロントエンド プログラミング言語と一致しているか、類似しているバックエンド フレームワークを使用しています。
たとえば、フロントエンドがU3Dの場合は、C#
その言語をバックエンド フレームワーク言語として使用します。フロントエンドはCocosTypeScript
で、バックエンド フレームワーク言語として使用できます。
ゲームサーバーに特化したフレームワークより必ずしも優れているわけではありませんが、より親しみやすく、使いやすいです。
これにより、フロントエンドがバックエンドを学習して開発することが容易になります。
結論
このような明確なアイデアはどこで見ることができますか? ぜひフォローしてください! 私をフォローして、ゲーム業界の最新の開発について学び、私と一緒にゲーム開発スキルを学びましょう。
私は「Billion Dollar Programmer」、ゲーム業界で8年の経験を持つプログラマーです。ゲーム開発において、皆さんのお役に立てれば幸いです。また、皆さんを通して皆さんのお役に立てれば幸いです。
AD: 作者のオンライン ミニゲーム「Snake Handheld Classic」、「Coloring Journey」、「Gravity Maze Ball」をクリックして自分で検索できます。
正直、いいねして見たい!この記事を必要と思われる他の友達と共有してください。ありがとう!
推奨されるコラム:
8 年間のゲーム マスター プログラマーと一緒にデザイン パターンを学ぶ
Cocos の独立系ゲーム開発フレームワークを段階的に構築してきた 8 年の経験