プログラミングを覚えてゲームを作りたい!でもどの言語を学べばいいのかわからない。
ゲームを作りたいけど、プログラミングは苦手。どうしたらいいだろうと悩んでいませんか?
今回はゲーム制作におすすめのプログラミング言語と、プログラミングなしでもゲームを作れるサービスを紹介します。
プログラミングなしでモック(デモ)を作った上で、自分が学びたい言語の学習も進めていくのがおすすめです。
1つ1つ詳しく見ていきましょう!
この記事もオススメ

この記事は現役エンジニアによって監修済みです。
この記事の目次

ゲーム制作におすすめのプログラミング言語5選
まずはゲーム制作におすすめのプログラミング言語を5つに分けて紹介します。
C#
ゲームプログラミングに使用される機会がもっとも多い言語の1つが、C#です。
その要因としてはUnity(ユニティ)やMonoGame(モノゲーム)など、C#でのゲーム開発に最適なゲームフレームワークが登場。実用的かつ多数のプラットフォーム向けにゲームを書き出し、配信できる環境が整ってきたことが挙げられます。
例えば、MonoGameの移植可能なプラットフォームは以下の通りです。
iOS, Android, MacOS, Linux, all Windows platforms, PS4, PSVita, Xbox One, and Switch
–出典 MonoGame 公式ウェブサイト
一度作ったゲームは、これらのプラットフォームに移植することができます。「iOSならiOS向けに開発」「AndroidならAndroid向けに開発」という手間を削減することができるため、開発効率が大幅に向上します。
またゲームだけでなく、Webアプリケーション開発やスマホアプリ開発に使われる機会が多い言語でもあります。例えば検索エンジンの「Bing」はC#で作られています。求人も安定的に存在する歴史の長い言語のため、覚えておいて損はない言語です。
C++
C++とは、C言語をベースに様々な機能を付け足したいわば「バージョンアップ版のC言語」です。できることが多い反面で、初心者には学習のハードルが高い言語としても有名です。
ちなみにC言語およびC++と、C#はまるで別物の言語です。
C++が難解な言語仕様を持ちつつも、ゲーム制作者に愛用される理由はハード制御が得意で実行速度が迅速なことにあります。ハード制御とは主に「組み込み開発」と呼ばれる家電やカーナビシステムなどの分野で使われる言葉で、どの処理にどの程度のメモリを割り当てるのかを制御することを指します。つまり軽量な処理にはごく少数のメモリ、重い処理には重点的に割り当てることで処理を効率的かつ迅速に行うのです。
つまり、C++でゲーム開発を行うと処理落ちを未然に防げるということです。
こうした用途から、今でもC++はゲーム開発でよく使われます。
JavaScript
そのためブラウザゲームの開発や、初心者が初めてゲームプログラミングを学ぶ際に採用されることが多い言語です。
JavaScriptは利用するプログラマーの数が多く、汎用性が高いことからフレームワークの数が膨大に存在することも興味深い点です。
例えば、日本発のJavaScript向けのゲーム開発フレームワークには「enchant.js」があります。2011年に公開されたオープンソースのフレームワークで、2Dゲームの開発に特化しています。スマートフォンゲームも手早く開発ができるため、本格的なゲーム開発に先立ってモックアップ(デモ)を短期間で作る際に採用されるケースもあります。
Lua
LuaはC言語との相性の良さから、ゲーム開発者に愛用されるスクリプト言語です。スクリプト言語とはソースコードを書いた後「コンパイル」というコンピュータが理解できる言語への変換作業を経ることなく、すぐに実行可能な言語のことです。
C言語はコンパイルが必要ですが、Luaはすぐに実行可能。
かつLuaからC言語の関数を呼び出すことができるため、Cの良さを生かしつつ効率的な開発が可能です。ゲーム開発のほか、画像処理ソフト開発に採用されたケースもあります。代表格はAdobe Photoshop Lightroom。
Luaには「LÖVE」と呼ばれる2Dゲーム開発向けフレームワークも用意されており、初心者でもゲーム開発がすぐにできます。例えば、以下は真っ黒な画面を作成し、その上に「Hello,World」と表示するLuaとLÖVEのソースコードです。
function love.draw()
love.graphics.print(‘Hello World!’, 400, 300)
end–出典 LÖVE 公式ウェブサイト
Swift
iOS及びmacOS向けのアプリケーション開発に最適な言語です。
iPhoneアプリの開発にはもともとObjective-Cという言語が使用されていましたが、言語仕様の複雑さや「iOSアプリ開発以外の用途の無さ」がエンジニアにとって大きな課題でした。
SwiftはObjective-Cと比較して、モダンな文法と潜在的なバグチェックの容易さが特徴。子供向けのプログラミング教育にも採用されるほど、直感的で分かりやすい言語です。
SwiftではシューティングゲームやRPGゲームなどを、iOS/macOS向けに作ることが可能です。ブラウザゲームやVRゲームではなく、スマートフォン向けのゲームアプリを作りたい方におすすめです。
スキルゼロ・実務未経験でもITエンジニアになれる!
テックキャンプはこれからのIT時代で自分の可能性を広げたい人を応援します。
- プログラミングは難しくて挫折しそう
- 独学でちゃんとスキルが身につくのか不安
- 効率的にプログラミングスキルを習得する方法を知りたい

主なゲームプログラミングの種類
どのプログラミング言語をゲーム開発向けに学ぶかを決めるには、主なゲームプログラミングの種類を把握しておくことも大事です。
ブラウザゲーム
ブラウザゲームとはGoogle ChromeやMozilla Firefoxなどのウェブブラウザ上で動作するゲームことです。有名タイトルには「刀剣乱舞」「艦隊コレクション」などがあります。
ブラウザゲームはHTML5とJavaScriptで動作するため、遊ぶデバイスを選びません。つまりPC・スマートフォン・タブレットからダウンロード不要でアクセスし、遊べる汎用性の高さが売りです。
開発サイドにとってはiPhoneならiPhone、AndroidならAndroidという個別の端末での動作確認が不要になるのも嬉しいポイントです。
シンプルなブラウザゲームの開発を行うなら、HTML5とJavaScirptを学習し、Canvas APIを使いこなせるようになることを目指しましょう。
教材はW3C Schoolsの「HTML Game」を一通りこなすと良いでしょう。W3CはWWW(World Wide Web)の各種技術の標準化推進団体です。W3Cが直接運営しているチュートリアルのため、必要な技術は一通り解説されています。
スマホゲーム
代表的なタイトルは「ぷよぷよクエスト」「PUBG MOBILE」など。
スマホゲームはNintendo SwitchやPlayStation 4などの据え置き型かつ長時間遊ぶことが前提のゲームとは異なり、短時間で楽しめるプレイと片手で遊べる操作性が原則。つまりUI・UXのデザインに工夫が求められます。
また料金体系にも工夫が必要です。スマホゲームの主流はダウンロード・インストールは無料で、アイテム課金やステージ課金です。つまり「気軽にインストールしてもらい、ハマってもらう」ためのレベルデザインも必要です。
スマホゲームの開発を行うなら、マルチプラットフォーム対応が可能なツールを利用することをお勧めします。マルチプラットフォームの場合、iOS/Android両対応のゲームを作れます。
具体的にはUnity、もしくはCocos2d-xを使用すると良いでしょう。
Unityの場合、使用言語はC#。Cocos2d-xの場合はC++、Lua、JavaScriptから好きなものを選べます。
コンシューマーゲーム
主なプラットフォームはPlayStation 4、Nintendo Switch、Xboxなどです。
特定のゲーム機向けにソフトを開発、販売する際にはライセンス料が必要となるケースが多いため、インディーズゲームは比較的開発される機会が少ないです。
よって基本的にはコンシューマーゲームは個人ではなく企業、もしくは起業して予算を組んだ上でチーム開発するのが主流です。
コンシューマーゲームはスマホアプリが無料〜高くても1000円程度の販売額であるのに対して5000円近くに価格設定されることが多く、高価です。
よって本格的なコンシューマーゲームを開発する際は、グラフィックスとプログラミング両方において妥協が許されません。グラフィックスが良くても処理落ちすればユーザーの不満を呼び、その逆も同様です。必要に応じて作業工程の一部外注なども検討するのも良いでしょう。
コンシューマーゲーム開発にはUnityの学習に加えて、C/C++の学習をお勧めします。
基本的にはUnityとC#を覚えることで、開発したゲームをコンシューマー向けに書き出すことは可能です。ただし先にも書いたようにコンシューマーゲームでは快適で質の高い動作が原則。そのためには単に「動けばいい」のではなく「高速化」が必要です。
Unityでは「Native Plugin」という機能を使うことで、CやC++で書いたコードを読み込ませてパフォーマンスチューニングなどを行うことができます。学習のハードルは上がりますが、コンシューマーゲーム開発をするなら「圧倒的な高品質ゲームを作る」という心構えで学習すると良いでしょう。
VRゲーム
従来の2Dゲームや3Dゲームに比べて、自分が本当にそのゲームの世界にいるような没入感が得られるのが特徴です。
VRゲーム開発の主流ツールはUnity、もしくはUnreal Engineです。加えて「VR Ready」と呼ばれる、VRゲームの開発〜検証、プレイに対応するハイエンドマシンが必要です。GPU搭載のPCが必須で、もし手元に端末がない場合は数十万円程度の予算を工面しましょう。
VR ReadyのPCがない場合、Unity上で3Dゲームの開発を行ったとしてもVRゲームのプレイに耐えうる高解像度/リフレッシュレートの状態での書き出しがほぼ不可能です。

プログラミングなしでゲームを作ることも可能
ゲームを開発したいと考える人の中には「自分は企画やグラフィックス、マネタイズに専念したい」という方もいるでしょう。
しかし、企画やグラフィックスに将来的に専念するとしても、ゲーム開発者になるのであれば自分でモックアップ程度は作成できるようになるのがおすすめです。
なぜなら、ゲームはプレイしてみて初めてわかる「操作性の難」や「企画そのものの良し悪し」が存在するからです。また仮にゲーム開発で起業し、投資資金を集める際にもモックアップがあれば投資家にゲーム内容を説明しやすいです。
そこで役に立つのが、プログラミングなしでゲーム開発ができるツールです。
プログラミングなしで開発可能なツールを紹介します。
GameSalad


GameSaladはドラッグ&ドロップで、ブラウザ上で機能を組み合わせてゲームを開発するツールです。評価版はBasic版の15日無料体験版という位置付けで、Basic版の価格は月19ドル。Pro版は月29ドルです。
ソースコードの編集機能はないため、GameSalad上でできないことは開発できません。
ピンボールゲームやスーパーマリオライクな横スクロールゲームなどのテンプレートが揃っているため、もし自分が想定しているゲームにマッチしたテンプレートがあれば組み合わせる素材と、その素材の挙動・動作を設定するだけでモックアップが完成します。
もしこれからゲームを作ろうと考えているなら、一度はGameSaladのテンプレートに近しいものがないかチェックしてみると良いでしょう。
そしてテンプレートに近しいものがあれば、GameSaladでモックを作成。モックをベースに、C#とUnityをはじめとするゲーム開発向けのプログラミング言語とツールを使って、本格的な実装をするのがおすすめです。
まとめ
ゲーム開発におすすめの言語とツール、そしてプログラミングなしでゲームが作れるサービスを紹介しました。
プログラミング経験がない方は、まずはGameSaladなどのサービスを使ってモックを作成。その後、自分が作りたいゲームに合った言語とフレームワークを学習し、本番のゲームを開発していくことです。
今回の記事を参考に、ぜひ思い描くゲームを形にしてみてください。
未経験からの転職の悩みを解決!無料カウンセリング開催中【転職成功人数4000名以上!※1】

こんな不安や疑問はありませんか?
・未経験から転職して、本当に年収が上がるのか
・ITエンジニア転職後の働き方や稼ぎ方が想像できない
・スキルゼロからITエンジニアとしてフリーランスになれるのか
カウンセリングでは、ITエンジニア転職やプログラミング学習を知り尽くしたプロのカウンセラーが、あなたの悩み解決をサポートします。満足度93%※1、累計利用者数は42,000人以上!※2
無料で相談できますので、気軽にご参加ください。【テックキャンプは給付金活用で受講料最大70%オフ※4】
※1.2018年10月24日〜11月16日(N=106) 2.2020年12月時点 3.テックキャンプ エンジニア転職は経済産業省の第四次産業革命スキル習得講座の認定も受けており、条件を満たすことで支払った受講料の最大70%(最大56万円)が給付金として支給されます