Unityで使うプログラミング言語のC#について紹介します
「Unityを使ってゲーム開発をしたいけど、どんな言語を使うの?」
「名前はC#だって聞いたけど、もうちょい詳しく知りたい」
というあなたに向けたC#の概要を紹介する記事です。
- Unityで使うプログラミング言語
- C#についての大まかな内容
- UnityでC#を使うための勉強の道筋
について解説しています。
Unityで使うプログラミング言語
Unityでは「C#」というプログラミング言語を使います。読み方は「シーシャープ」です。C言語と呼ばれるプログラミング言語があるのですが、この派生系の言語となっています。C → C++(シープラプラ) → C#の順番です。
昔はUnityScript(JavaScript)を使うこともできたのですが、Unity2018.3からC#に一本化されました。これからUnityを使うならC#を使っていくつもりでいれば大丈夫です。
Unityでは頑張ればスクリプトを書くことなくゲームを作ることもできます。しかし、プログラミングができるようになるとゲームで表現できることの幅が広がります。自分が思い描いたゲームの世界を表現できれば、よりユーザーの心に届きやすくなりますからね。
そのためにも、プログラミングを習得しておくことをおすすめします。
UnityでC#のスクリプトを使う場合、多くはゲーム内のオブジェクト(そのままゲームオブジェクトと呼ばれています)に関連付けます。この関連付けは「アタッチする」とも呼ばれていて、オブジェクトの動きをスクリプトで表現することができるんです。
カメラのオブジェクトにC#のスクリプトをアタッチすれば、カメラが主人公を追いかける動きを実装することができます。
敵キャラのオブジェクトにC#のスクリプトをアタッチすれば、敵キャラが主人公を追いかけるような動きも実装することができます。
敵キャラだったら、主人公に与えるダメージを計算したり、逆に主人公の攻撃によって倒される演出をしたりも実装します。
このように様々な動きを表現することができるので、ぜひプログラミング言語のC#について理解を深め、使いこなせるようになってくださいな。
プログラミング言語のC#とは
UnityでC#というプログラミング言語を使うことが分かりました。お次はC#についてざっくりと理解を深めていきましょう。
- C#を作った会社
- C#の特徴
- Unity以外での応用
これらについてざっくりと紹介します。
C#を作った会社
C#を開発したのはMicrosoft社。OSのWindowsを開発したあのマイクロソフトさんです。
なので、ドキュメントなどもしっかりと用意されているのが嬉しいポイント。ただし、ドキュメントについては自動翻訳を行っているためか、日本語訳が不安定なときもあるので、原文と比べながら確認すると良いかもしれません。
C#の特徴
.NET Frameworkと呼ばれるフレームワークを使用していて、オブジェクト指向のプログラミングができます。
他のプログラミング言語だと、Javaと似ているかもしれません。なので、Javaを元々やっていた人だと慣れるのが早いと思います。
C#はガベージコレクションという機能があり、メモリの管理を言語側でうまくやってくれます。プログラミングをする際にメモリ管理のことまで気にしながらコードを書くのは大変ですが、ガベージコレクションによって、本来自分で表現したい動きに集中することができます。
機能面ではなく使う側の視点からの特徴だと、他の言語に比べると比較的覚えやすい点があります。この辺りは個人の感覚にもよるので一概には言えませんが、「割と覚えやすい」という意見を聞きます。
私個人の感想としては、Javaよりキャッチアップが簡単でした。これはJavaから先に入って、似ている言語だから理解が早かった、というのもあるかもしれません。
主観的な話だけで恐縮ですが、学習コストが比較的少なくて済むというのは利点です。
Unity以外でのC#の応用
上でも少し触れましたが、C#は.NET Frameworkの上で動作します。この.NET FrameworkもMicrosoft社のフレームワークです。
そのため、Microsoftの製品と相性が良いです。データベースとしてSQL Serverを使っているシステムだと、それを利用するソフトウェアはC#を使って実装することも多いです。
「C# 案件」で検索すると、フリーランス向けに情報が公開されているサイトがあるので、これを参考にするのも良いでしょう。「どういう使われ方をしているのか」を知るにはこうしたサイトが便利です。
UnityでC#を使えるようになっておいて、他の業界に向けてチューニングしていけば潰しが効きます。
Unityで使うためにC#を勉強していこう
ざっくりとC#について紹介しました。いよいよC#を勉強していきましょう。
個人的におすすめしたいのは、まず「Hello World!」を表示する儀式。これはプログラマたちの産声みたいなもので、コンソールに文字を表示する機能を実装することで、コーディング、コンパイル、実行の簡単な流れを掴むことができます。
UnityとC#で「Hello World!」するやり方についてはこのブログでも解説しているので、よかったらさくっと挑戦してみてください。5分あれば終わります。
続いておすすめしたいのが、Unity公式のチュートリアルです。Unity Learnという公式の学習ページがあるので、こちらでチュートリアルを進めてみると良いでしょう。
どのチュートリアルからやっていけば良いのかは、こちらのページで紹介しています。必ずしもこの順番でやる必要はありませんが、あなたが学習を進めるためのひとつのアイディアとして参考にしてみてください。
チュートリアルが終わったらどんどん自分でゲームを作ってC#によるプログラミングに慣れていきましょう。元々プログラミングをしていた人だったらキャッチアップも早いと思うので、やればやっただけ成長していきます。
C#に対する理解を深めていくなら、「未確認飛行 C」さんのサイトがおすすめ。めちゃくちゃお世話になりました。というか今でもお世話になっています。
まとめ
この記事では、
- Unityで使うプログラミング言語
- C#についての大まかな内容
- UnityでC#を使うための勉強の道筋
について紹介しました。
簡単なプログラミングでも良いので、実際に手を動かしてみることが大切です。この記事を読み終えたら「Hello World!」だけでも良いのでやってみましょう。この一歩があなたの素敵なゲームを作るための偉大なる一歩なのです。
ゲーム開発の攻略チャートを作りました!
-
前の記事
【Unity】Lens Distortion(レンズの歪み)の使い方と効果【Post Processing】 2020.02.13
-
次の記事
ゲーム開発でぜひ使いたい「ゲームエンジン」とは?初心者向けに解説 2020.02.14
コメントを書く