【連載】Unityで学ぶC#入門


プログラミングを勉強したいけど、「何から始めれば良いかわからない」「始めたものの全然理解できない」という方も多いのではないでしょうか。

そのような方にUnityというゲームエンジンを通した「C#(シーシャープ)」言語の習得をおすすめします。

XR-Hubでは「Unityで学ぶC#入門」という連載を通じてC#を基礎中の基礎から解説していきます。

なぜ「C#ってそもそも何?」という基本的な内容から、クラスの概念や配列の使い方などプログラミングの学習も包括しているので、1からC#を学ぶという方にうってつけの連載となっています!

[第1回] C#言語とは?

C#イメージ

第1回では、連載のメインとなるC#の概要を解説します。

「プログラミング言語とは?」という話から、プログラミング言語の中でのC#言語の特徴、習得難易度、そしてUnityでC#を学ぶメリットについて記載しています。

この回で「C#ってどういう言語?」や、「なぜUnityでC#が必要となるの?」という、C#に関する基本的な疑問を解決することができます。

まずはC#の全体を把握から初めて、C#の学習を進めていきましょう。

[第2回] Unityのセットアップ・使い方を学ぶ

この回ではUnityの環境準備や基本的な使い方(Unity・Visual Studioのセットアップ、プロジェクトの保存方法など)を紹介しています。

セットアップは初学者にとって難易度が高く、上手く行かないと学習を諦めかねない部分なので、丁寧に解説しています。

また、Unityの初期設定方法やレイアウトの変更方法なども細かく説明しているので、Unityを始めたいけど始め方が分からない方やUnityの基礎操作について知りたい方は是非ご参考ください

[第3回] C#スクリプトの作成・実行方法を学ぶ

ここからC#のプログラミングをスタートしていきます。セットアップ等は既に終わってて、C#の勉強から始めたいという方はこの回から始めてもらうと良いです。

この回ではC#スクリプトの基本的な使い方について学びます。

  • UnityでのC#スクリプトの作成方法
  • C#スクリプトの構造
  • C#スクリプトの実行
  • エラーが出た時の解決策

などを解説します。

UnityでのC#の使い方や実行方法などをベースに記述しているので、はじめは難しく感じるかもしれませんが、出来る限り分かりやすく説明していくので、少しずつレベルアップしていきましょう。

[第4回] 変数の使い方を学ぶ

この回では変数の使い方について学びます。

プログラミングをする上で必ず出てくるものですので、正しく理解しないと思わぬところで躓いてしまうことがあります。

この回では

  • 変数の概要
  • 変数の定義方法
  • 変数の型
  • 変数関連でよくあるエラー

などを解説しています。

この記事を読むだけで変数について深く理解することができます。

[第5回] 演算子の使い方を学ぶ

この回では演算子の使い方について学びます。

演算子とは計算する時に使用する記号のことで、「+」「*」などのことを示します。

大小の比較や値の同値判定などでも「>」「=」などの演算子が使われます。

演算子には、算術演算子・関係演算子・代入演算子など様々な種類の演算子が存在し、これらを巧みに扱えることでプログラミングが簡単になります!

[第6回] if文を利用した条件分岐を学ぶ

この回では条件分岐の使い方について学びます。

条件分岐とは、Aという条件ではAの処理を、Bという条件の時にはBの処理を実行させるといった、条件に合わせて処理を変更することを言います。

プログラミングにおける極めて重要な項目であり、初学者にとってのプログラミングの登竜門になります。

実例をもとに、C#での「if文」の使い方の説明から注意点までを解説しているので、この回で「if文」についてしっかりと理解を深めましょう!

また、条件分岐では第9回のswitch文を使うこともありますので、一緒に学習いただければと思います。

[第7回] メソッドの使い方を学ぶ

この回ではメソッドの使い方を学びます。

メソッドとはある処理をひとまとめにしたスクリプトのことで、「関数」と呼ばれることもあります。(厳密に言えば異なるものですが)

同様の操作を何度も行いたい場合、メソッドを使わないと同じようなスクリプトを何度も書かなければなりません。

しかし、メソッドを定義することでそのメソッドを呼び出すだけで良くなり、スクリプトを書く手間も抑えられますし、修正・メンテナンスも非常に簡単に行えるようになります。

メソッドにはC#に元々から設定されているものもあれば、自分で定義することもできます。

C#を効率的に使うためには必ず必要な概念となるので、ぜひこの回でメソッドを使えるようにしましょう。

[第8回] for文を利用したループを学ぶ

この回はfor文を利用したループの使い方を学びます。

ループとは指定したある範囲の処理を繰り返すことであり、「繰り返し」とも呼びます。

for文の定義の方法から、for文を使ったUnityでの使用例などを解説しています。

ループはC#に限らずあらゆる言語・システム開発にて必要とされる知識になります。

[第9回] switch文を利用した条件分岐を学ぶ

この回ではswitch文を利用した条件分岐を学びます。

条件分岐は第6回のif文でも実現できるのですが、switch文でも実現することができます。

下のように3つ以上の条件分岐を作成したい場合はswitch文を使うことが多いです。

switch文の定義方法から具体例を参考にした使い方の学習まで記載しています。

第6回も一緒に振り返りながら、if文とswitch文の理解を深めましょう。

[第10回] 配列の使い方を学ぶ

この回では配列の使い方を学びます。

配列とは同じ型の複数の値を一つの変数として扱う仕組みです。

配列はゲーム開発はもちろん、そのほか様々なシステム開発に利用される基本的な技術です。

配列の定義方法や使用例について詳細に解説しているので、しっかりと配列の基礎を学びましょう。

また、配列と似た「List(リスト)」も絡めて学習しておくとC#への理解が一層深まるので、リストの解説をしている第13回も合わせてご覧ください。

[第11回] アクセス修飾子の使い方を学ぶ

この回ではアクセス修飾子の使い方を学びます。

アクセス修飾子とはクラス(第12回で解説します)や、そのクラス内のメソッド、変数がどこからアクセス(値の変更や参照)をすることができるかを決定するものです。

Unityを学習していると確実に目にしたであろう「public」や「private」などがアクセス修飾子の1種になります。

アクセス修飾子を学ぶことでプログラムの単純なミスや、不正なアクセスを防ぐことができるようになります。

[第12回] クラスの基本的な使い方を学ぶ

この回ではクラスの基本的な使い方について学びます。

クラスとは特定オブジェクトの設計図であり、自分が使用したい機能をあらかじめクラス(設計書)として準備することで、いつでも使用できるようにすることができます。

クラスの定義方法から具体的な使用例まで解説しています。

オブジェクト指向プログラミングの肝であるクラスについて、この回でしっかりと理解を深めましょう。

[第13回] List(リスト)の基本的な使い方を学ぶ

この回ではList(リスト)の基本的な使い方を学びます。

リストとは、同じデータ型の値をまとめて保存し利用するためのものです。

配列と似ていますが、配列と異なる点は要素数が固定ではないという点です。

そのため、C#において複数のデータを同時に扱いたい場合に、データの要素を増減させる時はlistを使い、データ要素数が変わらない時は配列を使うことが多いです。

ゲーム開発において要素数が固定でない場合はよくあるので、この回でリストの使い方をマスターしましょう。

配列については第10回の講義で解説しているので、リストと絡めながら理解しましょう。

 

まとめ

いかがでしたでしょうか。この連載を通してC#を使えるようになれば幸いです。

今後もC#の理解を進めるために必要な内容を記事にしていくので、時折チェックしていただければ幸いです。

Unityでのゲーム開発についても解説しているので、C#を学ぶ中でUnityへの興味が出てきた方はぜひご一読ください。


この記事はいかがでしたか?よければシェアをお願いします。

あきごろう

株式会社x garden CGO(Chief Growth Officer) Unityエンジニアとして日々Unityと奮闘中 自他共に認めるゲーマー Splatoon最高記録:世界6位(リグマペア) ApexLegends最高記録:5連チャンピオン