来年から、ゲーム業界で働くことになった新卒です。
ゲーム系の専門学校に通い、3年間の間UnityやUnrealEngineを用いてゲーム開発を行ってきました。
が、今振り返ると作ってきたゲームは全てエンジン側が提供している機能を使って開発しており
プログラマーとしてこのままで良いのか?と疑問がわき始めました。
ですが、作りたいゲームがありそれらを作れる様に勉強してきた今までとは異なり
具体的にどんな事を勉強したら良いのか判断できず
今でも逃げるように作りたいゲームを用意された便利な機能群を用いて開発している日々です。
まだ実際にエンジニアとして働くイメージが付いておらず非常に不安なので
プログラマーの方、特にゲーム業界で勤務していた経験のある方に是非意見をお伺いしたいです。
以下のような質問にはグッドを送りましょう
- 質問内容が明確
- 自分も答えを知りたい
- 質問者以外のユーザにも役立つ
グッドが多くついた質問は、TOPページの「注目」タブのフィードに表示されやすくなります。
気になる質問をクリップする
クリップした質問は、後からいつでもマイページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
下記のような質問は推奨されていません。
- 間違っている
- 質問になっていない投稿
- スパムや攻撃的な表現を用いた投稿
適切な質問に修正を依頼しましょう。
こちらの質問が他のユーザーから「問題・課題が含まれていない質問」という指摘を受けました。
こちらの質問が他のユーザーから「プログラミングに関係のない質問」という指摘を受けました。
回答6件
2
一応(?)現役のゲームPGなので、ちょっと回答を(と言いつつ長文なってしまった)
今後ゲームエンジンを使わずに開発を行うということなくなっていくかと思います。
※まだ頑張っているところもありますが。
例えUnityやUnrealEngineがなくなったとしても、SE業界などと同じく新しいツール(ゲームエンジン)に乗り換えるだけでしょう。
とはいえ内部の仕組みを知っているのと知らないのとでは対応力がだいぶ変わります。
※現にここの掲示板でも3Dの知識がないゆえに、(失礼ですが)変な質問が多いです。
例えばクォータニオンに関する知識がなければ、オブジェクトの角度の計算もままならないでしょうし、
内積・外積の知識がなければ、当たり判定の処理などで困ったことになるでしょう。
なのでその辺りの知識に不安があるのであれば、そちらを勉強することをお勧めします。
別に3Dにかぎらず、メモリプールの仕組みを自作してみるとかでもありです。
※ぶっちゃけツールの使い方なんて、仕事してれば覚えます。
言語の勉強をすべきかどうかについては個人的には微妙です。
さすがに基本的に知識がないというのは問題ですが、ゲームプログラミングの世界においても凝った作りになることなんて稀です。
これは私の持論ですが、プログラミングというのは数学とは全く関係なく、文章を書くのと同じことだと思っています。
そのためひたすらコードを書いて経験を積まないと身につくことはないと考えます。
※英語の単語・文法を覚えても、それでちゃんとした文章を書けるようになるかは別ということ。
下手にオブジェクト指向やコンポーネント指向などにくくるより、YAGNIの原則などに従ってできるだけシンプルにコードを書くことを心掛けたほうが最初はいいと思います。
※むしろ仕様変更が日常茶飯事なこの業界においては、下手にオブジェクト指向で固めると、大本の仕様変更が入ったとき地獄を見ます…。
投稿2022/11/17 05:45
総合スコア36
0
仕様書として渡されて、実装したあとに
「やっぱ仕様書は嘘でした。新仕様書を見てね」ってひっくり返ることがよくあるので
ストレス耐性をつけておくのがよいかと思います。
・・・
会社決まる前ならポートフォリオ制作とかを勧めたのですが
会社決まってるならそちらの流儀にあわせる準備をしつつ
ソロ開発と違ってチームで動く場合は完全自由な制作とはならないので、チーム制作の経験がなければそういったものに触れてみるのも良いかと思います。2-3人でゲーム作るだけとかでもいいです。(こういうのは学校課題とかでやるのかな?)
あとはなんだろう、1週間でゲームを作るという練習もやったことがあります。
ゲーム企画考えて遊べるレベルまでを1週間でもっていくという制作です。Unity1weekとかで調べると詳細が出てきます。
個人開発だとついつい湯水の如く作業工数を費やしてしまいがちですが、お仕事としてはそうもいかないので期限が決まっている中で何かを作る作業というのも楽しいですよ。
投稿2022/11/18 01:59
総合スコア3226
良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
このような回答には修正を依頼しましょう。
0
Text
1反射神経, エイム, 作業力
投稿2022/11/16 15:32
総合スコア481
良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
このような回答には修正を依頼しましょう。
こちらの回答が複数のユーザーから「質問に対する回答となっていない投稿」という指摘を受けました。
0
入社予定の会社がUnityやUnrealEngineを使ってるのであれば、その学習をより進めた方がいいと思います(知らないのであればぜひ聞きましょう。教えてくれないことはないと思います)。会社もあなたのその力量を見て採用した可能性があるので、ゲームエンジンのスペシャリストになる気持ちでさらに上を目指してどんどん学習すべきです。いままで作ったことのないゲームに手を出してみたり、会社が開発してるゲームに似たようなものを自分なりに作ってみるのもいいと思います。
そうでないのなら、闇雲に何か特定の技術や言語を勉強しても空振りする可能性があるかと思いますので、英語や数学・物理などの基礎をより一層固めた方がいいと思います。エンジニアであればその3教科ならやっておいて損はないはずです。
参考)
https://www.amazon.co.jp/dp/4862464947
この辺の勉強をすることにモチベーションが出ないのであれば、プログラミング言語のC#かC++の理解を深めるのもありかとは思います。新卒入社であれば、入ってすぐに成果を出せなんてこともないはずので(小さ目の会社ならあるかもですが)、あまり気張らずに自分のペースで学習されるといいと思います。会社に入ってからの方が絶対に大変なので、それまでにやれることをやっておく(行ったことのないところに旅行に行く、車の免許を取る)なども忘れずに。
投稿2022/11/15 10:23
編集2022/11/15 10:30総合スコア3974
良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
このような回答には修正を依頼しましょう。
回答へのコメント
0
こんにちわ。
そうですね、小さなゲームでもいいので
2DのRPGもどきを1から作ってみる、
なんてどうでしょう。
ドラクエみたいなやつね。
投稿2022/11/15 07:29
総合スコア444
良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
このような回答には修正を依頼しましょう。
こちらの回答が複数のユーザーから「質問に対する回答となっていない投稿」という指摘を受けました。
回答へのコメント
0
私はゲーム業界ではないので参考になるかは不明ですが…特に気にしなくていいのでは?と思っています。
というのも昨今のゲーム制作会社ではゲームエンジンの使用が主流だからです。少なくとも私が専門学校に在籍していた2年前時点ではそう言われておりました。
(実際大手ゲーム会社の中には独自のゲームエンジンを自社で構築し使用しているところも多いと聞いています。)
確かにネイティブで記述できるに越したことはありませんが、中途半端に手を出すよりは自身の武器を生かす方向に注力された方がより戦力になるのではと考えます。
それでも心配ならまずは関係性が近いところから徐々に広げていく方向で動かれてはいかがでしょうか。(例:Unityを使ってるのでC#についてより掘り下げて勉強してみる等。Unityでの開発時にも知識が役立つので潰しが効く)
投稿2022/11/15 07:28
編集2022/11/15 07:29総合スコア670
良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
このような回答には修正を依頼しましょう。
こちらの回答が他のユーザーから「情報が古くなった回答」という指摘を受けました。
回答へのコメント
関連した質問
Q&A
解決済
IDLE(python) 上に書いたプログラムを xcode に移して動作させたい
回答2
クリップ0
更新
2023/02/02
Q&A
受付中
大学2年生の悩み、個人開発とかをしているような人になるにはどうすればいいのか。
回答6
クリップ1
更新
2023/01/09
Q&A
受付中
初心者が勉強するのに良いプログラミング言語は何ですか?
回答230
クリップ44
更新
2015/04/22
Q&A
解決済
Unity ScriptableObjectの保存
回答1
クリップ0
更新
2023/01/31
Q&A
解決済
飛んでいる矢の角度を進行方向に合わせるには
回答1
クリップ0
更新
2023/02/04
Q&A
解決済
Unity:ランキング入力時のリセットキー無効化
回答2
クリップ0
更新
2023/01/31
Q&A
受付中
ゲームを制作する上で質問したい事があります。
回答2
クリップ1
更新
2023/01/27
Q&A
解決済
敵を倒せるか、倒せないのか判断するシステムを作りたい
回答4
クリップ0
更新
2023/01/27
同じタグがついた質問を見る
Unreal Engineは、Epic Games社によって開発されたゲームエンジンです。高レベルの移植性を持っており、様々なプラットフォームのゲーム開発が可能。GitHubアカウントを登録すれば無料でダウンロードできます。
Unityは、ユニティテクノロジーが開発したゲームエンジンです。 主にモバイルやブラウザ向けのゲーム製作に利用されていましたが、3Dの重力付きゲームが簡単に作成できることから需要が増え、現在はマルチプラットフォームに対応しています。 言語はC言語/C++で書かれていますが、C#、JavaScript、Booで書かれたコードにも対応しています。
良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。