おーみんだよ。

おーみんだよ。

話題のニュースや役に立つ雑学をまとめています。

【Unity第四話】プログラミング言語C#で物体を動かす!

      f:id:bookreadkun:20181124233532p:plain

おはようございます。おーみん(@Ooooooomin_365)です。

 

前回の「【Unity第三話】Unityのビルドとコンポーネント。」にて、プログラミングド素人だけどUnityのゲームに関する設定を色々やってみたよーという内容を書きました。

 

一応Unityに関してはこの記事を書く半年前にサラッと勉強はしているのですが、もうそんなに覚えていないので「ド素人」ということで宜しくお願いします(笑)

※半年前に勉強した内容は「Unityで色々なゲームを作ってみた」にまとめています。

 

それではUnity第四話へ行ってみましょう!

 

前書き

この記事は、プログラミングド素人がUnityを勉強していく様子をお伝えするものです。

 

細かな操作方法までは載せていません。

あくまでUnityの雰囲気と楽しさを伝えるのを目的としています。

参考書紹介

f:id:bookreadkun:20181121232626j:plain

『Unityで作るスマートフォン3Dゲーム開発講座』 夏木雅規、寺園聖文 著

 

C#を用いて物体を動かしてみる!

今回はシーンビューにある物体をクルクル回してみたいと思います。

※シーンビューが分からない人は「Unityの基本画面」についての説明記事をご確認ください。

 

いつものようにUnityを開き、プロジェクトバーの左上の「create」ボタンを押します。

 

そうしたら以下の画面のように「create」からバーが表示されるのでその中の「C# Script」をクリックしましょう。

f:id:bookreadkun:20181124220040p:plain

 

そのあとプロジェクトバー内に「NewBehaviourScript」というアイコンが現れるので「Rotation」と変えてダブルクリック!

 

すると・・・ 

f:id:bookreadkun:20181124222517p:plain

 

何か出てきたーーーーーー(笑)

 

そうです。ここに物体がクルクル回るプログラムを書くのです。

 

見てみると、12行目に「void Update~}」とあります。

このvoid Update~の部分に物体の動きに関するプログラムを書いていくのです。

 

理由としてはUnityでは、この「void Update~}」の部分が一定時間毎に呼び出されるからです。物体が動いている様子はパラパラ漫画のように静止画の連続で表されるため、どのように動くのかを書いて、それを繰り返させるわけですね。

 

ということで

 

作成してみました。

f:id:bookreadkun:20181124223911p:plain

 

6行目で"angle"という変数を定義し、

 

15行目に"transform.Rotate(angle * Time.deltaTime);

 

と書きました。

 

Rotateは回るという意味、angleという変数に入れる数字によって回転速度が変わるという仕組みです。(←雑w)

 

保存後に「Rotation」のアイコンをヒエラルキービューの「Cube」へドラッグ&ドロップし、ゲームスタートすると・・・・

※ヒエラルキービューが分からない人は「Unityの基本画面」についての説明記事をご確認ください。

 

シーンビューにあったCubeが回りました。

f:id:bookreadkun:20181124230103p:plain

画像なので回っている様子が見せられない・・・

 

すみません。。。

 

変数"angle"の値をテキトーに変えたりすると、回転速度にも変化が見られました。

 

とはいえ、ただCubeが回っているだけだと面白くありません(笑)

 

そこでよりリアル感を持たせるために宇宙空間を作ってみましょう!

物体をよりリアルにしてみる!

 

さあさあ!宇宙空間を作るぞ!

 

まずは地球の様子から描いていこうか。

 

ヒエラルキービューの「create」ボタンから"Sphere"をクリックするとシーンビューに球体が出てきました。名前を"Earth"へ変更します。

f:id:bookreadkun:20181124230832p:plain

 

 

画面左上の「Assets」→「Import New Assets」から(上に載せた参考書が用意した)「EarthMap.tiff」をこの球体に埋め込みます。

 

f:id:bookreadkun:20181124231410p:plain

 

おおおおお!

それっぽいというか・・・地球やんけ!!!(笑)

 

宇宙の様子も同様に背景へ埋め込むと・・・

f:id:bookreadkun:20181124231502p:plain

 

おおおおおおおおおおおおお!

 

宇宙やんけ。

 

と、こんな感じでよりリアル感を出すことが出来ました。

 

操作は結構省略していますが、割と簡単に設定できました。

Unity面白いっすね!

 

最後に

今回はここで終わりです。

次回はこの画像を使って宇宙に漂うゴミを掃除していくゲームを作っていきます。

 

より細かなプログラムを書くと思いますが、楽しんで理解していきたいですな。