【超基本】Unityゲーム制作で使うC#の基本を徹底解説!

Creating Game

こんにちは。あっきーです。
早稲田大学を退学して4年間アメリカ留学に行く、ゲーム制作にハマり中のものです。

Unity初心者
Unityでゲーム制作したいんだけどプログラミングが全く分からないんだよなぁ。最低限の知識を知っておきたい

ということで、今回はUnityで使うC#の超基本を教えていきます。

C#の特徴や最低限の知識を理解することで、スムーズにプログラミングの学習ができるので頑張っていきましょう。
丁寧に解説していきますので、初心者でも拒絶せず見てくださいね。

Unityで使うプログラミング言語C#とは?

Unityで使われるプログラミング言語はC#です。
C#はマイクロソフトが開発しているプログラミング言語で、アプリやゲーム制作に使われる言語です。
マイクロソフトなのでwindowsとの相性がいいです。

コードの書き方はJavaによく似ています(Javaも用途はC#とよく似ています)。

UnityにおけるC#の特徴と役割

Unityではゲーム制作を行うので、キャラクターの移動とかポイントの管理とか必要になりますよね。
その際は、すべて自分でC#を使ってプログラミングをする必要があります。

C#で書いたコードの1つのまとまりをスクリプトと呼びます。
このスクリプトを使って物体を動かしたりするのがC#の役割となります。

もう少し特徴を見てみましょう。
Unityでスクリプトを作る時、基本はこの形になっています。


using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Sample : MonoBehaviour
{
    //最初のフレーム
    void Start()
    {
        
    }

  //毎フレーム
    void Update()
    {
        
    }
}

ざっくりと以下のような形になってます。

  • スクリプト→プログラム全体の箱(using 〇〇 + class)
  • using ~~ → 「c#やunityが初めからもつ機能を使うよ」という指令
  • クラス→オブジェクトを動かす命令のまとまり

どんどん箱を作っていくイメージ

C#では、まずusing ~~ と書いてC#やunityが持つ初期機能を使うことができます。
こう宣言しておくことで、unityならではのコンポーネントというものを操作することができるようになります。

スクリプトを書く際はどんどん「指令」という名の箱を作っていくイメージです。
その「指令」が入った箱を何らかのオブジェクトにくっつけることでオブジェクトがその指令通りに動くことができます。

その「箱」をクラス(Class)と呼ばれています。上の例でも class : Sampleとありますね。
“Sample”という名前の箱があるということです。

この図のように理解しておけばOKです(このような形をオブジェクト指向と言ったりもします)。

C#のメソッドとは

先ほどのプログラムをもう一度見てください。
classの中では命令文を書くんですが、void Start() {}void Update() {}とありますね。

これはメソッドと呼ばれているものです。
classは命令文を書く場所ですが、命令文もメソッドによってさまざまに区切って書いていきます。
{}の中に書いてまとまりを作っていく具合です。

例えばStart()には、「ゲーム開始時、一番最初に呼び出す」という意味があります(厳密には違いますが)。
この中に命令を書くことで、その命令は「最初だけ呼び出す」ことができます。

こういった具合にメソッドで命令文を区切りながらプログラムを作り上げていきます。

メソッドの使い方、voidの意味など、より実践的な話は別の記事でお話します。

C#でコメントを書く

プログラムは普通、何百行も書かないといけません。
そうなると、「これって何の命令だ?」と自分でも分からなくなることがあります。
それを避けるためにコメントという機能があります。メモ書きみたいな感じです。

コメントはプログラムに何の影響もないものとなります。

方法は2つあります。

  • “//”を手前に付ける
  • “/* */”でくくる

“//”(ダブルスラッシュ)を手前に書くとそれ以降の1行はコメントになります。
先ほどのプログラムにもこれを使っています。

これはめちゃめちゃ使うのでショートカットキーが設定されていて「Ctrl + /」でコメントにできます。

“//”では1行分しかコメントにできないので、何行ものコメントを書きたい場合は”/*”と”*/”で挟み込めばOKです。

スクリプトのアタッチ

スクリプトは書いただけでは意味がなく、先ほど言ったように、あるオブジェクトにくっつけて意味があります。
このスクリプトをつけることをアタッチと言います。

やり方は非常に簡単です。

スクリプトをインスペクター上にある「Add Component」へドラッグ&ドロップすればOkです。

これでスクリプトが実際に動くようになります。(これをインスタンス化と言ったりもします。)

まとめ

今回、ざっと、C#の特徴と大まかな役割をお話しました。

他にも「変数」だったり、「if 文」だったり、「キャラを動かす」などなど、とにかく学んでは実際に書いてというのをやっていきます。

頑張っていきましょう。
それでは、また。

  • C#はゲーム制作やアプリ制作に使われる
  • スクリプト:プログラム全体の箱
  • using 〇〇 : C#やunityの初期機能を使う宣言
  • class:命令文を実際に書く箱
  • メソッド:命令文を細かく区切る箱
  • コメント:”//”か”/* */”でメモ書きができる

人気記事現役大学生が告白!大学生がブログを始めるのをオススメする理由

人気記事WordPress(ワードプレス)の始め方【初心者でも15分で開設】