Unityでのゲーム開発に興味があるが、C#について詳しく知らないという方も多いでしょう。C#を使いこなせるようになると、より高度な動きや仕組みを実現できるようになります。
本記事では、Unityで欠かせないプログラミング言語であるC#の基本的な使い方や、習得によって具体的になにができるようになるのかなどについて解説します。実際にUnityでC#をどのように使えばいいのか知りたいという方は、ぜひ参考にしてみてください。
UnityのC#とは
Unityで使えるC#は、Microsoftが開発した汎用的なプログラミング言語で、Unityではオブジェクトの動作を制御するための主要言語として採用されています。
ゲームやアプリ開発はもちろん、業務システムの構築、さらにはVR・ARにも活用されており、幅広い開発に対応できる柔軟さが魅力です。Unityで本格的に制作を行いたい方にとって、習得は欠かせない言語です。
産業分野でもUnityは活用されている
Unityはゲームエンジンであることから、エンタメ業界で使われるソフトと思われがちですが、製造業のような産業分野でも活用されています。
例えば、Unityで現実世界を再現し、工事現場の安全確認や作業手順のシミュレーションをすることも可能です。また、CADで作成した3Dモデルを読み込むことで、設計や製造にも用いられています。
なお、以下の記事では、Unityの産業向けプロジェクトで注目されているデジタルツインについて解説しています。Unityのデジタルツインの活用例も紹介しているので、Unityを産業向けに取り入れたい方は、ぜひこちらも参考にしてみてください。
C#を学習するとUnityでなにができる?
Unityでサポートされている言語はC#のみのため、プログラミングを用いた開発を行うならC#の学習は不可欠です。C#を身につけることで、独自の処理を実装できるようになります。
具体的には、Unityの標準機能で搭載されていない複雑なゲームロジックやシステムを取り入れられます。これにより、RPGやFPSといった本格的なゲームの開発も可能です。
簡単なパズルゲームや玉転がしゲームであればシンプルなコードでも実現できますが、よりクオリティの高いゲームを作りたいと考えている場合はしっかりとC#も学習しましょう。
UnityでC#を適用する方法
実際に、UnityでC#を使う方法について解説します。UnityでC#を記述してオブジェクトに反映するまでの流れは以下のとおりです。
- オブジェクトを作成する
- スクリプトファイルを作成する
- C#のコードを記述する
- コードをオブジェクトに適用する
- 実行する
これらの流れについて詳しく見ていきましょう。
①オブジェクトを作成する
作成したC#は直接オブジェクトに適用させます。そのため、まずはC#を適用させるためのオブジェクトを作成しましょう。
Hierarchyウィンドウを右クリックして表示されるメニューから「3D Object」→「Cube」の順番でクリックします。

すると、Sceneビューに立方体のオブジェクトを作成できます。
②スクリプトファイルを作成する
続いて、C#を記述するためのスクリプトファイルを作成します。Projectウィンドウを右クリックして「Create」から「C# Script」を選択しましょう。

すると、空のスクリプトファイルが作成できるので、任意のファイル名に変更します。
③C#のコードを記述する

続いて、作成したスクリプトファイルをダブルクリックしてエディタを開きます。エディタ内では自由にC#のコードを記述できます。
今回は、オブジェクトが上下に自動で動くシンプルなスクリプトを作成してみましょう。「void Update()」の中に以下の記述をコピーして貼り付けてください。
transform.position.x,
Mathf.Sin(Time.time),
transform.position.z
);
このコードでは、「Mathf.Sin(Time.time)」でY軸のみを-1〜1の間で変化させる指示を出しています。
④コードをオブジェクトに適用する
作成したコードはオブジェクトにアタッチすることで動作します。ProjectウィンドウにあるスクリプトファイルをHierarchyウィンドウまでドラッグして、最初に作成したオブジェクトの上で離しましょう。

すると、オブジェクトにC#コードが反映されます。
⑤実行する
実際にスクリプトを実装してみましょう。SceneビューからGameビューに切り替えて、画面上部の再生ボタンを押すとオブジェクトを動かすことができます。

立方体が自動で上下移動を行っていれば問題なく動作しています。
また、スクリプトを使ったより本格的なゲーム開発の方法を学びたい方には、Unity基礎セミナーがおすすめです。Unity基礎セミナーでは、ドラッグ&ドロップで作れるシンプルなゲームではなく、C#を用いた本格的なゲーム開発の方法について学べます。プログラミングを習得して初心者から脱却したい方は、ぜひこちらのセミナーもチェックしてみてください。
UnityのC#でよく使う関数の一覧

C#ではさまざまな関数が使えますが、まずは頻出する関数について覚えるところから始めましょう。以下は、Unityでよく使われるC#関数の一覧表です。
| 関数名 | 説明 |
| Start関数 | オブジェクトが表示された際に一度呼ばれる |
| Update関数 | 毎フレームごとに呼び出される |
| Awake関数 | Start関数よりも先に呼ばれる |
| OnEnable関数 | オブジェクトが有効になる度に呼ばれる |
| OnCollisionEnter関数 | 衝突を判定する |
| OnTriggerEnter関数 | すり抜けるオブジェクトの当たり判定を行う |
| Debug.Log関数 | Consoleビューにコメントや値を表示させられる |
各関数は呼ばれるタイミングや用途が異なるため、適切に使い分けることが大切です。
また、以下の記事では、Unityを使ってVRを開発する方法について解説しています。2Dや3Dのゲーム開発だけでなく、VRコンテンツの制作にも興味のある方は、ぜひこちらの記事を参考にしてみてください。
UnityのC#を勉強する方法
Unityはローコードで開発のできるゲームエンジンですが、C#の知識があればさらに高度な開発が可能です。しかし、プログラミング言語は理解が難しく、なにから勉強すればよいかわからない方も多いでしょう。
以下は、UnityのC#を学ぶおすすめの方法です。
- 本で学ぶ
- 講座で学ぶ
これらの勉強方法について見ていきましょう。
①本で学ぶ
本を使った勉強では、プログラミングの基礎から体系的に学べる点が大きなメリットです。単にコードの書き方を覚えるだけでなく、プログラミングの考え方や構造の理解も同時に深められるため、効率的にスキルを習得するための基礎が身につきます。
また、UnityのC#を解説した本は多くの種類が出版されており、選択肢が多いのも特徴です。さらに、コストもかからないため、初心者に特におすすめの勉強法といえます。
②講座で学ぶ

プログラミングを習得するなら、論理的に考えて問題を解決する力も必要です。そのため、本だけでは理解が追いつかず挫折してしまう方も多いでしょう。
そのような場合は、講座でプロから学ぶのがおすすめです。Unity基礎セミナーでは、Unityの基礎だけでなく実際にゲーム作りを体験しながら学べるため、知識に加えて実践的なスキルも身につきます。
さらに、豊富な受講形態が用意されており、自分に合ったリズムで勉強できるのもメリットです。プロからUnityを使った効率的な開発方法を学びたい方は、ぜひ詳細をチェックしてみてください。
セミナー名 Unity基礎セミナー 運営元 GETT Proskill(ゲット プロスキル) 価格(税込) 41,800円〜 開催期間 2日間 受講形式 対面(東京)・ライブウェビナー・eラーニング
UnityのC#でよくある質問
UnityのC#を学ぶうえで、頻出する質問は以下のとおりです。
- C#とC++の違いは?どっちがいい?
- C#エンジニアの年収はどれくらい?
- C#スクリプトが使えないのはなぜ?
- C#をマスターするには何時間勉強したらいい?
これらの質問の回答を一つずつ見ていきましょう。
C++とC#はどちらもオブジェクト指向型のプログラミング言語ですが、用途や習得のしやすさに違いがあります。C++はC言語をベースにしており、処理速度が高速のため、デスクトップアプリや組み込みシステムでも広く使われているのが特徴です。
ゲーム開発では、Unreal EngineがC++をサポートしています。一方、C#はモバイルアプリ開発に適していることや、学習コストが低く初心者でも扱いやすい点が魅力です。
そのため、Unityでのゲーム開発をしたい場合や、プログラミング初心者の場合はC#、Unreal Engineを使った本格的なゲーム開発や高性能なシステムを作りたい場合はC++が適しています。
転職エージェントサービスであるレバテックキャリアによると、C#エンジニアの平均年収は451万円です。エンジニア全体の平均年収である504万円と比較すると、低めの水準なのがわかります。
ただし、エンジニアは経験によって収入は大きな開きがあるので、年数を重ねて実務経験を積むことで段階的に年収はアップしていくでしょう。また、C#は需要が高く、幅広い分野で活用できるスキルである点も、経験を積むことで収入を伸ばせる根拠の一つです。
C#スクリプトが使えない場合によくあるのが、スクリプト名とクラス名が一致していないケースです。Unityでは、スクリプトファイルを作成すると、「NewBehaviourScript.cs」という名前でファイルが作成されます。
しかし、後からファイルの名前を変更すると、スクリプトのクラス名がNewBehaviourScriptのままになっているためエラーになります。そのような場合は、「public class」の後に続く名前を自分がつけたスクリプト名に変更することで対処可能です。
全くのプログラミング未経験者が新しい言語を習得する場合、一般的な目安として約1,000時間の学習が必要といわれています。ただし、C#は比較的学習しやすい言語であるため、この時間より短く済む可能性もあります。
実務でC#を活用できるレベルまで到達したい場合は、目標にするスキルを明確にし、必要な学習時間を逆算して計画的に勉強することが大切です。
UnityのC#についてのまとめ
今回は、Unityで開発を行う際に欠かせないC#について紹介しました。C#を使うことで、オブジェクトの動作や挙動を細かく制御できるようになります。
また、ゲーム開発だけでなく、産業分野やVR/ARの制作にも活用できるため、習得することで幅広い制作ができるようになります。まずは基本的な関数から学び、徐々に複雑なスクリプトに挑戦することで、実務や趣味での開発にも役立てられるでしょう。