完全に未経験から始める個人ゲーム制作(知識ゼロからでもOK)
こんにちは!ジェイです。
ゲーム制作に興味を持っている初心者の皆さん、ようこそ!ゲーム制作は創造力を発揮し、自分のアイデアを形にする素晴らしい方法です。
しかし、初めてのゲーム制作をしてみたい!と思っても、プログラミングやグラフィックやサウンドなど、色々と勉強することがあって難しい・・・
他のサイトを見て参考にしたり本を買って読んだりして、頑張ろうと思って挫折した経験がある人もいるのではないでしょうか?
本ブログでは、そんな超初心者のあなたでも、超丁寧にわかりやすくをモットーに、ファミコン風のレトロゲームを作れるようになるまでの手順を少しずつ説明していきます。
一昔前では、当たり判定などに難しい数学など苦労することもたくさんありましたが、今ではゲームエンジンがほとんどやってくれるようになりました!
更に最近ではchatgptなどのAIがプログラムを出力してくれたりして、以前よりも確実にゲームを作りやすい環境になっています。
なので、2024年の現在からゲーム制作をするのは、すごくよい環境が揃っているのです!
そして、この記事を読むと個人ゲーム制作者が、どういった手順で学習すればゲームを作れるようになるかということがわかります。
完全に未経験から始めるゲーム制作(準備編)
まずはゲームを作るためにはどのゲームエンジンを使うか?というのを決める必要があります。
私自身はUnityとUnrealEngineを使ったことがありますが、この2つのゲームエンジンであればどんなゲームでも作ることができます。
UnityとUnrealEngineの特徴
結論からいうとUnityはSimpleにゲームが作れるゲームエンジンで、UnrealEngineは逆にEasyにゲームが作れるゲームエンジンです。
つまり、Unityはすべてのジャンルに対して同じような作り方ができて、UnrealEngineは、TPSやFPSなどのアクションゲームを作るのに特化したツクール系のゲームエンジンみたいなイメージです。
例えば、UnrealEngineではエイムオフセットというUnityにはない機能があって、これによって銃を構えるアニメーションを事前にセットできます。
更には、ゲームを再生しない状態でも、銃などのオブジェクトを手に持つのを調整する仕組みなどが、エディタに備わっているので、非常にやりやすいです。
プロジェクトを作る時点で最初から様々なアクションゲーム用のテンプレートが使えるのも大きな特徴です。
ただし、Unityの方が良い面もあって、UnrealEngineのエディタはUnityよりも重くて、比較的高性能なPCを使う必要があります。
更にUnityでは、WebGLに対応しているので、小規模なゲームやモバイルゲームを作るのには適しているでしょう。
扱う言語は、UnityではC#を使います。
C#は.net coreなど他の環境でも十分応用して使える汎用性の高い言語で、他でも十分に使えるし勉強しておいて損はないです。
一方でUnrealEngineは、Blueprintというノードを繋いでいくグラフィカルベースになってるので、C++やC#よりも比較的簡単に目的の処理を実装することができますが、UnrealEngine専用の知識になってしまうところもあります。
しかし、たまに他の解説サイトでBlueprintはプログラミングしなくてもゲームが作れると言った説明を見ますが、まったくそんなことはなくて、プログラミングの基礎的な知識は必要なのは注意しましょう。
比較項目 | Unity | UnrealEngine |
---|---|---|
シェア率 | ◎ | ◯ |
プログラミング言語 | C# | ブループリント&C++ |
プログラミング難易度 | △ | ◎ |
ネットの情報量 | ◎ 日本語の情報量が多い | △ 海外の情報が多い |
グラフィック性能 | ◯ | ◎ |
アセット | ◎ | ◯ |
マルチプレイ | △ | ◎ |
UnityとUnrealEngineのどちらを使うべきか?
大まかな情報はわかりましたが、結局はどっちを使えばいいかという問題の答えは、「自分の作りたいゲームのジャンルからゲームエンジンを決める」です。
バイオハザードやPUBGやApexなどのシューター要素があり、高画質なグラフィックを要するゲームなどはUnrealEngineが得意とするジャンルです。
更にマルチプレイ対応のオンラインゲームを作ろうと思った時には、エディタ内の機能にすべてが実装されている上にメッセージ数の制限などもないUnrealEngineの方が有利です。
私個人の決め方でいうと「銃を持って撃つゲームはUnrealEngineで作ってそれ以外はUnity」で作るみたいに使い分けてます。Unityのマルチプレイで銃を拾って持たせるのってすごく大変なんですよね・・
シェアから見るゲームエンジンの用途
ゲームエンジンの半分がUnityでUnrealEngineは2割弱という結果です。これは私の感覚的にも大体あっていて、UnityとUnrealEngineのユーザーはこのような結果になっていると思います。
モバイルでのシェアはUnityの方が多く、Steamでのシェアを見てみるとUnrealEngneが多くなる特徴もあります。これはUnrealEngineのグラフィックの美しさに加えて、AAAクラスの大規模のゲーム開発に力を入れているというのも理由でしょう。
ガンダムで例えるなら、Unityは高機動型でコンパクトなF91、UnrealEngineは一撃の火力が大きいZZガンダムみたいな感じですね。
作るゲームのジャンルすらわからない人は好きな方でよい
とはいえ、まったくゲームを作ったことのない未経験者は、どっちがいいか決められないですよね。
例えば、あなたが他にプログラミングの経験があったならUnityがよいでしょう。そうだとしたらUnityのエディタの使い方を覚えるだけでいいので、かなり短期間でゲームが作れるようになります。
逆に、プログラミングはできないけど、絵が描くのが得意だったり3Dモデリングが得意だったりするのであれば、UnrealEngineを使うといいでしょう。
まったく何も経験がない人はとりあえずUnityを使ってみるのをおすすめします。
理由は日本語の情報量が多いことに加えて、今ならchatgptでソースコードを生成してもらったり、エラーのチェックまでしてもらえるので、少し前よりもゲーム制作の難易度がものすごく下がりました。
ただし、UnrealEngineのBlueprintは、バイナリーデータなのでUnityに比べるとコピペがしずらいので、AIをフル活用するという意味でもUnityがよいです。
まとめ
Unityを使うべき人
- モバイルゲームや小規模なゲームなどを作りたい人
- C#のプログラミングを学んでゲーム制作をしたい人
- アセットストアが非常に豊富なのでアセットをフル活用してゲームを作りたい人
UnrealEngineを使うべき人
- 美しいグラフィックが売りのゲームを作りたい人
- シューター系のゲームやマルチプレイ対応のオンラインゲームを作りたい人
- 高性能なパソコンを持っている人
ちなみにVRMモデルに対応したゲームは、どちらのゲームエンジンでもできますが、Unityの方が圧倒的に楽なので、VTuberとして活躍したい人や自分のVRMのアバターを使いたい人には、Unityをおすすめします。
本ブログでも、超初心者向けにUnityの使い方の解説から初めてミニゲームを作って、最終的にはファミコン風のレトロゲームを作れるようになるのを目的としていきますので、どうせならUnityでファミコン風レトロゲームを作れるようになってみてはいかがでしょうか。
次回からUnityのインストールから実行までの手順や最低限押さえておくべきプログラミングの知識などを説明していきます。