VR-AR-MR-XR ブログ

【初心者向け】VRプログラミングの代表言語・C#とは? 歴史・特徴を紹介

8月 10, 2020

山形大学VR部のAktです。
これが初の記事投稿となります。よろしくお願いします。

今回は、VRプログラミングでの主流言語である「C#(シーシャープ)」について
かなり嚙み砕いて解説しようと思います。
※「これから触りたいけど全然わからない」という人向けの記事です。

Unity(2D・3D・VRゲームを作成できるソフト)等において、C#は必要不可欠です。「C」と聞いて、「C言語なら聞いたことがあるけど……」という人もいるかと思います。そういった人のために、まずは概要を解説します。

C# 概要

C#は、2000年にMicrosoft社(Windowsでお馴染みの会社)が開発したプログラミング言語です。

Cと付いているだけに、C言語とは何かしらの関係があるのは予想がつくのではないでしょうか。

 

まず、C#はC++C言語の拡張版)と有名言語「Java」の利点を受け継いでいる言語です。

よって、このうちどちらか、或いは両方使えるよという方は、C#も簡単にマスターできるはずです(私は両方使ったことが無かったので1からの学習でした)。

 

じゃあその利点って何?というような意見が出るところで、「オブジェクト指向」について知ってもらう必要があります。

これは言語の型を表す言葉で、C++やJavaもこの型です。

 

しかし、説明しようとするととても難しい言葉です。

ものすごく簡単に言うと、「主に『モノ(オブジェクト)』を指定して編集する言語」という意味です(かなり省略しています)。

 

この「オブジェクト指向」こそが大きな利点です。

基本的に「クラス」という概念(他にもいくつか存在)を使いモノを指定することで、他のプログラムに悪影響を及ぼさずになおかつ拡張・編集しやすい言語であると言えます。

用途

では、C#で何ができるの?という話ですが、この言語はアプリ開発がメインです。

Web・スマートフォン対応のアプリをはじめ、デスクトップアプリ(「○○ストア」などの公式マーケット以外でダウンロードできるアプリ)もプログラムすることができます。

有名な例を挙げると、検索エンジン「Bing」、ポータルサイト「MSN Japan」などでしょうか。

PCを使っている人なら、一度は聞いたor使ったことがあると思います。

 

しかし忘れちゃいけないのは、C#はVRプログラミングができる、ということです!!!!!

冒頭でも少し話しましたが、「Unity」というアプリ・ゲーム作成ソフトではC#をメインで使用します。

そして、その中の機能を使うと、VRゴーグルを通して自分がゲーム空間に入ったような気分を味わうことができます。

 

あまり話すとUnityの解説になってしまいそうなので話を戻します。

ここからは写真も混ぜて、C#の実際のプログラムについて解説したいと思います。

 

実際のプログラミング画面

早速、プログラムのコードを見てみましょう。

ソースコードの例

「いきなり見せられてもわからない……」という人がほとんどだと思います。
一つ一つ解説していきます。

まず、この黒い画面は「Visual Studio」というC#の開発環境です。

これによって、C#がとてもプログラムしやすくなっています(特にシンタックスハイライトとよばれる色分けがありがたいです)。

C#を始める際に、同時にVisual Studioもインストールできるので、別サイトから○○して……というのはありません。

 

次に、写真内の文字についてです。

様々な色で「using」や「KeyCode」など多くの英語が書かれています。

これらはC#のコードです。これらのコードを組み合わせてアプリ・ゲームをプログラムします。

コードは膨大な数存在しているので(私も全部は覚えていません)、この記事の中で全コードを解説するのは割愛させていただきます。

 

少しだけ例を挙げて簡単に説明すると、

  • void Start() → ゲームスタート時に一度だけ呼び出される(写真中では書いてあるだけで使用していません)
  • void Update() → 毎フレーム (1秒に数十回、環境によって変わる) 呼び出される
  • if(~) → 条件式(もし○○ならば××する)

といった具合です。

コードは実際にプログラムしながら理解するのが一番だと思うので、これから始めたいという人は、他のサイトで公開されているサンプルプログラムや教本などから手をつけてみるといいかもしれません。

※ちなみに、写真のコードは「物体をキーボードの4方向キーで動かす」プログラムです。

 

余談ですが、ここで私がC#を学習するために使用している教本を紹介したいと思います。

私が使っているのは、掌田津耶乃『見てわかるUnity2019 C#スクリプト超入門』(2019,秀和システム)です。
(上の文字をクリックするとAmazonのページに飛びます)

この本は、私自身が大学の先輩から勧められたものなんですが、読んでみると一つ一つの説明が細かく・詳しく載っており、初心者の私でもUnityを通してC#の内容が理解しやすかった本です。

※これはあくまで一例なので、決して「コレじゃなきゃダメ」というわけではありません。他にもC#の教本は沢山ありますし、使い方を解説しているWebサイトも多くあります。C#を学習したい! という人は、自分にあった学習方法及びテキストを見つけて学習してみてください。私が挙げた本は参考程度に覚えて頂ければと思います。

おわりに

いかがだったでしょうか。この記事でC#がどんなものかある程度わかって頂ければ幸いです。

C#を使えば、様々なVRアプリを開発できます。

私はまだ勉強中の身なのであまり偉そうなことは言えないのですが、社会のC#人口がもっと増えていけば、VR事業が活性化すると思います。

今回の記事で少しでもC#に興味を持った方は、ぜひ他のサイトの解説記事もご覧になってください。

また、VRに興味を持った方は、このサイトに様々な分野のVRに関する記事があるので、目を通してみてください。

最後までお読みいただきありがとうございました。

 

AR, VR. XR の活用やMicrosoft Holo Lensを活用した建築業向けソリューションGyroEyeに関するお問合せはこちら

-VR-AR-MR-XR, ブログ
-, , , ,

© 2020 IoTプロトタイピング・VR・AR・Unity メディアラボ