質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.02%
Unreal Engine

Unreal Engineは、Epic Games社によって開発されたゲームエンジンです。高レベルの移植性を持っており、様々なプラットフォームのゲーム開発が可能。GitHubアカウントを登録すれば無料でダウンロードできます。

Unity

Unityは、ユニティテクノロジーが開発したゲームエンジンです。 主にモバイルやブラウザ向けのゲーム製作に利用されていましたが、3Dの重力付きゲームが簡単に作成できることから需要が増え、現在はマルチプラットフォームに対応しています。 言語はC言語/C++で書かれていますが、C#、JavaScript、Booで書かれたコードにも対応しています。

Q&A

受付中

ゲームプログラマーの勉強内容について

mias_0419
mias_0419

総合スコア0

Unreal Engine

Unreal Engineは、Epic Games社によって開発されたゲームエンジンです。高レベルの移植性を持っており、様々なプラットフォームのゲーム開発が可能。GitHubアカウントを登録すれば無料でダウンロードできます。

Unity

Unityは、ユニティテクノロジーが開発したゲームエンジンです。 主にモバイルやブラウザ向けのゲーム製作に利用されていましたが、3Dの重力付きゲームが簡単に作成できることから需要が増え、現在はマルチプラットフォームに対応しています。 言語はC言語/C++で書かれていますが、C#、JavaScript、Booで書かれたコードにも対応しています。

6回答

2グッド

1クリップ

571閲覧

投稿2022/11/15 07:12

来年から、ゲーム業界で働くことになった新卒です。
ゲーム系の専門学校に通い、3年間の間UnityやUnrealEngineを用いてゲーム開発を行ってきました。
が、今振り返ると作ってきたゲームは全てエンジン側が提供している機能を使って開発しており
プログラマーとしてこのままで良いのか?と疑問がわき始めました。

ですが、作りたいゲームがありそれらを作れる様に勉強してきた今までとは異なり
具体的にどんな事を勉強したら良いのか判断できず
今でも逃げるように作りたいゲームを用意された便利な機能群を用いて開発している日々です。
まだ実際にエンジニアとして働くイメージが付いておらず非常に不安なので
プログラマーの方、特にゲーム業界で勤務していた経験のある方に是非意見をお伺いしたいです。

justmeet0924👍を押しています
melian😍を押しています

以下のような質問にはグッドを送りましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

グッドが多くついた質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

2022/11/15 07:30

こちらの質問が他のユーザーから「問題・課題が含まれていない質問」という指摘を受けました。

2022/11/15 07:53

こちらの質問が他のユーザーから「プログラミングに関係のない質問」という指摘を受けました。

回答6

2

一応(?)現役のゲームPGなので、ちょっと回答を(と言いつつ長文なってしまった)

今後ゲームエンジンを使わずに開発を行うということなくなっていくかと思います。
※まだ頑張っているところもありますが。

例えUnityやUnrealEngineがなくなったとしても、SE業界などと同じく新しいツール(ゲームエンジン)に乗り換えるだけでしょう。

とはいえ内部の仕組みを知っているのと知らないのとでは対応力がだいぶ変わります。
※現にここの掲示板でも3Dの知識がないゆえに、(失礼ですが)変な質問が多いです。

例えばクォータニオンに関する知識がなければ、オブジェクトの角度の計算もままならないでしょうし、
内積・外積の知識がなければ、当たり判定の処理などで困ったことになるでしょう。

なのでその辺りの知識に不安があるのであれば、そちらを勉強することをお勧めします。
別に3Dにかぎらず、メモリプールの仕組みを自作してみるとかでもありです。
※ぶっちゃけツールの使い方なんて、仕事してれば覚えます。

言語の勉強をすべきかどうかについては個人的には微妙です。
さすがに基本的に知識がないというのは問題ですが、ゲームプログラミングの世界においても凝った作りになることなんて稀です。

これは私の持論ですが、プログラミングというのは数学とは全く関係なく、文章を書くのと同じことだと思っています。
そのためひたすらコードを書いて経験を積まないと身につくことはないと考えます。
※英語の単語・文法を覚えても、それでちゃんとした文章を書けるようになるかは別ということ。

下手にオブジェクト指向やコンポーネント指向などにくくるより、YAGNIの原則などに従ってできるだけシンプルにコードを書くことを心掛けたほうが最初はいいと思います。
※むしろ仕様変更が日常茶飯事なこの業界においては、下手にオブジェクト指向で固めると、大本の仕様変更が入ったとき地獄を見ます…。

投稿2022/11/17 05:45

Kerupim

総合スコア36

pig_vba👍を押しています
melian👏を押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

0

仕様書として渡されて、実装したあとに
「やっぱ仕様書は嘘でした。新仕様書を見てね」ってひっくり返ることがよくあるので
ストレス耐性をつけておくのがよいかと思います。

・・・

会社決まる前ならポートフォリオ制作とかを勧めたのですが
会社決まってるならそちらの流儀にあわせる準備をしつつ
ソロ開発と違ってチームで動く場合は完全自由な制作とはならないので、チーム制作の経験がなければそういったものに触れてみるのも良いかと思います。2-3人でゲーム作るだけとかでもいいです。(こういうのは学校課題とかでやるのかな?)

あとはなんだろう、1週間でゲームを作るという練習もやったことがあります。
ゲーム企画考えて遊べるレベルまでを1週間でもっていくという制作です。Unity1weekとかで調べると詳細が出てきます。
個人開発だとついつい湯水の如く作業工数を費やしてしまいがちですが、お仕事としてはそうもいかないので期限が決まっている中で何かを作る作業というのも楽しいですよ。

投稿2022/11/18 01:59

hogefugapiyo

総合スコア3226

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

0

Text

1反射神経, エイム, 作業力

投稿2022/11/16 15:32

atcoderyellow

総合スコア481

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

2022/11/17 00:52

こちらの回答が複数のユーザーから「質問に対する回答となっていない投稿」という指摘を受けました。

0

入社予定の会社がUnityやUnrealEngineを使ってるのであれば、その学習をより進めた方がいいと思います(知らないのであればぜひ聞きましょう。教えてくれないことはないと思います)。会社もあなたのその力量を見て採用した可能性があるので、ゲームエンジンのスペシャリストになる気持ちでさらに上を目指してどんどん学習すべきです。いままで作ったことのないゲームに手を出してみたり、会社が開発してるゲームに似たようなものを自分なりに作ってみるのもいいと思います。

そうでないのなら、闇雲に何か特定の技術や言語を勉強しても空振りする可能性があるかと思いますので、英語や数学・物理などの基礎をより一層固めた方がいいと思います。エンジニアであればその3教科ならやっておいて損はないはずです。

参考)
https://www.amazon.co.jp/dp/4862464947

この辺の勉強をすることにモチベーションが出ないのであれば、プログラミング言語のC#かC++の理解を深めるのもありかとは思います。新卒入社であれば、入ってすぐに成果を出せなんてこともないはずので(小さ目の会社ならあるかもですが)、あまり気張らずに自分のペースで学習されるといいと思います。会社に入ってからの方が絶対に大変なので、それまでにやれることをやっておく(行ったことのないところに旅行に行く、車の免許を取る)なども忘れずに。

投稿2022/11/15 10:23

編集2022/11/15 10:30
AbeTakashi

総合スコア3974

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

回答へのコメント

mias_0419

2022/11/16 01:28

回答ありがとうございます。 会社では3割Unreal, 7割自社エンジン(C++)と中途半端なので、Unrealの勉強よりも 英語やC++の勉強を進めた方が良いのかもしれませんね... ただ英語に関しては、今や翻訳機能の進化が凄まじくほぼノータイムで理解できる文章に翻訳できるので やはりC++の勉強をすべきかもしれません。 ただ、英語の語彙力を上げる事で理解し易い命名が出来る点も見逃せませんし、悩みますね。
AbeTakashi

2022/11/16 01:41 編集

私の経験ですが、海外のエンジニアと打ち合わせする機会が幾度かあり、ほとんど意味も分からずぼーっとしてたことがあるのですが、同席してた新卒のエンジニアが全く怯むことなく英語で議論に参加してたりして、自分が情けなくなったことがあります。そういう機会があるかどうか分かりませんけど、英語やるのは人生という枠まで広げて考えても無駄ではないと思います。もちろん、そこまで辿り着く労力考えると大変ですけどね。C++も英語と同じレベルに思えるほど奥深い魔窟言語ですので(笑)、学習進めて損があることはないかと思います。

0

こんにちわ。

そうですね、小さなゲームでもいいので

2DのRPGもどきを1から作ってみる、

なんてどうでしょう。

ドラクエみたいなやつね。

投稿2022/11/15 07:29

srsnsts

総合スコア444

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

2022/11/15 07:41

こちらの回答が複数のユーザーから「質問に対する回答となっていない投稿」という指摘を受けました。

回答へのコメント

mias_0419

2022/11/16 01:31

回答ありがとうございます。 なるほど、ゲームエンジンを用いずに開発を行うといった認識でよろしいでしょうか? その場合はDirectXやOpenGLを使っての開発ですかね。 そちらの方面も検討してみます。3-4か月で動くものが作れると良いのですが...
srsnsts

2022/11/16 06:11

>なるほど、ゲームエンジンを用いずに開発を行うといった認識でよろしいでしょうか? その通りです。 >その場合はDirectXやOpenGLを使っての開発ですかね。 そこまでガチガチにせずとも、 HTMLやJavascript.Canvasといったものでも 結構作れますよ〜

0

私はゲーム業界ではないので参考になるかは不明ですが…特に気にしなくていいのでは?と思っています。
というのも昨今のゲーム制作会社ではゲームエンジンの使用が主流だからです。少なくとも私が専門学校に在籍していた2年前時点ではそう言われておりました。
(実際大手ゲーム会社の中には独自のゲームエンジンを自社で構築し使用しているところも多いと聞いています。)

確かにネイティブで記述できるに越したことはありませんが、中途半端に手を出すよりは自身の武器を生かす方向に注力された方がより戦力になるのではと考えます。

それでも心配ならまずは関係性が近いところから徐々に広げていく方向で動かれてはいかがでしょうか。(例:Unityを使ってるのでC#についてより掘り下げて勉強してみる等。Unityでの開発時にも知識が役立つので潰しが効く)

投稿2022/11/15 07:28

編集2022/11/15 07:29
pig_vba

総合スコア670

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

2022/11/15 11:39

こちらの回答が他のユーザーから「情報が古くなった回答」という指摘を受けました。

回答へのコメント

mias_0419

2022/11/16 01:36

回答ありがとうございます。 確かに、Unrealと自社エンジンを用いての開発を行っていますね。 ゲーム開発の規模が大きくなり、プログラマーだけでも数十人単位で開発する昨今 広く浅くよりも狭く深く経験を積んだプログラマーが求められているのは確かだと感じます。 互いのエンジンはC++を用いているので、C++の勉強をしつつUnrealのエディター拡張に目を向けてみたいと思います。

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.02%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Unreal Engine

Unreal Engineは、Epic Games社によって開発されたゲームエンジンです。高レベルの移植性を持っており、様々なプラットフォームのゲーム開発が可能。GitHubアカウントを登録すれば無料でダウンロードできます。

Unity

Unityは、ユニティテクノロジーが開発したゲームエンジンです。 主にモバイルやブラウザ向けのゲーム製作に利用されていましたが、3Dの重力付きゲームが簡単に作成できることから需要が増え、現在はマルチプラットフォームに対応しています。 言語はC言語/C++で書かれていますが、C#、JavaScript、Booで書かれたコードにも対応しています。