[Unity本 紹介] UnityではじめるC# 基礎編 改訂版

UnityではじめるC# 基礎編 改訂版

「UnityではじめるC# 基礎編 改訂版」([著]リブロワークス [発行]エムディーエヌコーポレーション [監修]いたのくまんぼう)2016年に刊行されたものの2020年改訂版だ。ちょうど購入しようと思っていた時に改訂版が発売されてちょっと嬉しかった。

成するゲームは2つと少なめだが、初心者としては満足できるゲームが完成する。この本で必要なC#の知識も得られるので、ちょっと難しいとは思うがゼロから始めようという方もC#でゲームが作れるだろう。

心者向けでスマホ実機テストやストア公開の方法までフォローしてくれている。開発から公開まで通して体験できるのはいいなと思った。

内容をCHAPTERごとに紹介

 この本の内容をイメージできるように、問題のない範囲で各CHAPTERごとに内容を簡単に紹介したい。

CHAPTER 1 Unityで開発する準備をしよう

 このCHAPTERでは、UnityとC#の紹介。UnityのダウンロードとVisual Studioとの連携の解説をしている。

Unityは割と頻繁にアップデートしているので、教則本どおりに進めたいのなら使っている教則本と同じバージョンのUnityをダウンロードしたほうが分かりやすいと思う。

OSとAndroid向けのスマホゲーを作るのに必要な機能の追加の仕方も解説されている。

UnityのインストールとVisual Studioとの連携については最新の情報をネットで調べたほうがいい。

CHAPTER 2 C#の基本中の基本を覚えよう

Unityでのプロジェクトの始め方からスクリプトの作成の解説。Unityの基本画面の説明もしている。

C#におけるプログラムのおおまかな形の説明。文字の表示から四則演算や変数の解説。一応の説明はしてくれているが、本当に最低限といえるものなのでC#はC#の専門書で学んだほうがいいと思う。駆け足で説明されても初心者には説明不足だろう。ただ、ここで多少の理解ができなくてもこの本を最後までやりきることは不可能ではない。実践で使い方を教えてもらったほうが理解しやすかったというのは何事にもあることだ。

CHAPTER 3 条件分岐と繰り返しをマスターしよう

 条件分岐(if文,switch文)と繰り返し(for文,while文,do-while文)と配列変数の説明。

 Unityを使ってのC#の解説だが、触ってみてどういう変化が得られるのか確かめる程度でいいと思う。あまり真剣に悩まずに「あぁこういう風に変わるのか」くらいの認識で十分だ。ゲームを作っていくなかで腑に落ちることも多いので。

CHAPTER 4 Unityプログラミングの基本

 Unityがどういうふうな仕組みでゲームオブジェクトを動かしていくのか説明する。

 画面に画像を配置して動かしたり拡大や縮小して動きを確かめる。

 簡単なプログラミングを画像にアタッチして画像を動かしてみる。画像をプレハブ化して量産できるようにする。

 ここではプログラミングの内容よりも、ゲームオブジェクトにアタッチして制御することを実践してみることが重要。

CHAPTER 5 脱出ゲームをつくろう

 実際にゲームをタイトル画面からエンディングまで通して遊べるように作っていく。

 教材は「脱出ゲーム」で、昔にアドベンチャーゲームと呼ばれていたジャンルのゲームを作っていく。ものすごくこじんまりとしたゲームだが、完成すると結構な達成感が得られると思う。

 プロジェクトを作成してスマホ用の画面サイズに設定しAndroid用かiOS用に作っていく。必要な素材は本書のダウンロードページからダウンロードできるので、見た目もそれなりのものができる。

 タイトル画面からゲーム画面(ゲーム内の仕掛けの実装)、そしてクリア画面と作っていく。初心者には結構な長丁場になるが、得られる知識も多いし最後まで頑張る価値はある。完成したゲームには改造の余地が残してあり、自分で工夫してクオティアップを目指すこともできる。

 ここで作る脱出ゲームはプログラミングする部分は最低限でほとんどがUnityのエディタだけで作られているので、Unity自体の使い方を学ぶのにはうってつけだと言える。

CHAPTER 6 物理パズルゲームをつくろう

 物理エンジンを使った簡単なパズルゲームを作る。GOボタンを押すとボールが上から下へ落ち、下に設置したカゴに入ったらクリア。ここではステージセレクト画面も作る。クリアしたことのあるステージだけセレクトできる画面にする。ここで作成するゲームは効果音も用意されているので、よりゲームらしいものが完成する。

 物理エンジンによるゲームオブジェクトに加えられる力の影響やコライダーを使っての衝突判定を学ぶ。他にもリトライの仕様やカゴに上手く入った時の演出、お邪魔ブロックの設置やステージの量産など、単純な内容のゲームでもアイデア次第でもっとリッチなゲームに仕上げられることが学べる。

 ゲームそのものの部分よりも、GO・RETRYボタンやステージセレクト画面へ移行したり未クリアのステージは選べない等のゲーム全体の制御をプログラムで実装する部分がとても勉強になった。

CHAPTER 7 実機テストとアプリの公開

 PCとスマホを繋げての実機テストのやり方。ストアでの公開の手続き。AndoroidとiOSの両方でのやり方を説明してくれている。

 私はまだこのCHAPTER 7を実践していない。おそらくだがWindowsのアカウントのユーザー名を日本語で作ってしまっていたので書き出しができないのだと思う。仕方なくゲーム開発テスト用に別アカウントを作ってそちらにデータをコピーすることにした。ある程度ゲームが貯まったら全部テストしてみようと思っている。

 次にPC買い替えるときは気をつけよう…。

感想

 半分をC#とUnityの説明に使っているのだが、これだけでは不安な方もいるかも知れない。C#自体の習得も視野に入れている方は、別のC#の専門書を購読したほうが安心を得られると思う。単にゲームを作る仕組みや作業の流れを知りたいという目的なら、スクリプトはダウンロードできるのでプログラムはせずに仕組みだけ学ぶということも可能だ。

 出来上がるゲームは2つともそのままでも”遊べる”ものだし、絵を描いたり文章を変えたりイベントを付け加えたりすれば、それなりのものに磨き上げることもできるだろう。なにより本を見ながらとはいえ、そこそこのゲームを完成させたことは大きな自信につながる。

 きっと本書を終えたみなさんは、もっとああしたいこうしたいと思うだろう。実はそういった気持はものすごく大切で、次のステップへ進む原動力になる。私も「もっとこうしたい」を実現するためにもう少しレベルの高そうな本に挑戦している。

 ゲーム開発の1冊目に選んでも後悔しないとは思うが、2冊めの本選びに悩んでいる方にもオススメだ。いきなり中級者用の本にいくとプログラムの量も多くなるので途中でやめてしまうかもしれない。この本を一通り読み終えるのはそんなに時間もかからないし、サンプルゲームの改造してみるのも勉強になる。

 自分がまだまだ初心者だという認識なら、この本から学べることはたくさんあると思う。