これだけでは、単に画面がゆがんでいるだけだ。もう少し動きのある「Vortex」にしてみよう。そのためにはスクリプトを書く必要がある。
「Hierarchy」から「Main Camera」を選択し、「Inspector」の「Add Component」から「New Script」を選択する。「Name」に「VortexScript」、「Language」に「Java Script」を選択して、「Create and Add」ボタンをクリックする。
「Inspector」に「Vortext Script(Script)」が追加されるので、「Script」の「VortextScript」をダブルクリックして「MonoDevelop」を起動し、リスト1のコードを記述する。
//#pragma strict private var came:GameObject; private var no:int; function Start () { came=GameObject.Find("Main Camera"); no=1; } function Update () { var myAngle=came.GetComponent("Vortex"); no+=1; myAngle.angle=no; }
今回は、先頭の#pragma strictをコメントアウトしておく(1行目)。コメントアウトしていないと、Update関数内で使用しているangleプロパティでエラーが発生するので、注意してほしい。「VB.NET」で言うところの「Option Strict On」のような役割を果たしているのだろう。
まず、GameObject型の変数「came」と、int型の変数「no」を宣言する(2〜3行目)。
4〜7行目のStart関数内では、Findを使って「Main Camera」にアクセスし、変数cameで参照しておき、変数noは「1」で初期化しておく。
9〜13行目のUpdate関数内では以下の処理を行う。GetComponentを使って「Vortex」のスクリプトにアクセスし、変数「myAngle」で参照しておく(10行目)。変数「no」の値を1ずつ増加させる(11行目)。増加させる変数「no」の値を、「Vortex」スクリプトのangelプロパティの値に指定する(12行目)。これで、angleの値が増加し続け、画面のゆがみが継続される。
必ずビルドを忘れずに行っておき、実行してみよう。動画3のようになるはだ。
最後に、メニューの「File」→「Save Scene as」から「VortexEffectサンプル」と言う名前で保存しておこう。
次に、もう一つEffectを試してみよう。
試す前に、今使用したEffectは使用できないようにするために、「Vortex(Script)」と「Vortex Script(Script)」の先頭にある□内のチェックを外しておこう。
次に、「Project」の「Assets」→「Standard Assets」→「Effects」→「Image Effects」→「Scripts」フォルダーにある、「NoiseAndGrain.cs」を「Hierarchy」の「Main Camera」の上にドラッグ&ドロップする。
「Inspector」に「Noise And Grain(Script)」が追加されるので、先頭の□に必ずチェックを付ける。
「Black Boost」に「5」を指定し、「Mid Grey」の値を大きく「1」にすることで、ノイズが際立つ。「Noise Shape」の「Texture」に、右横隅の「○に・」のアイコンをクリックして表示される、「Select Texture2D」から「RandomVectors」を選択する(図20)。
では、これで実行してみよう。動画4のようになるはずだ。画面にノイズが入っているのが分かるだろう。図20の「Black Boost」と「Mid Grey」に指定する値の大きさで、ノイズの度合いが変化する。
最後に、メニューから「File」→「Save Scene as」から「NoiseEffectサンプル」という名前で保存しておこう。
このようにImage Effectを使用すると、画面にいろいろな特殊効果を与えることができる。まだまだ、いろいろなスクリプトが用意されているので、「Main Camera」にドラッグ&ドロップして各自が試してほしい。
プロパティの設定は分からなくても、いろいろ触っていくうちに、こうすれば、こうなる、ということが自然と分かってくる。これらのプロパティについて情報はWeb上にはないので、各自が検証して試してみる以外にないだろう。
Image Effectの詳細については、下記のURLも参照してほしい。
次回は本連載の最終回。Unity 4.xでは「Professional Edition」つまり有料のUnityだけでしか使えなかった無料アセットが、無料のUnity 5の「Personal Edition」で使えるようになったので、一つ取り上げて使ってみる。
このコンテンツは、『ユニティちゃんライセンス』で提供されています
薬師寺国安事務所代表。Visual Basicプログラミングと、マイクロソフト系の技術をテーマとした、書籍や記事の執筆を行う。
1950年生まれ。事務系のサラリーマンだった40歳から趣味でプログラミングを始め、1996年より独学でActiveXに取り組む。
1997年に薬師寺聖とコラボレーション・ユニット「PROJECT KySS」を結成。
2003年よりフリーになり、PROJECT KySSの活動に本格的に参加。.NETやRIAに関する書籍や記事を多数執筆する傍ら、受託案件のプログラミングも手掛ける。
Windows Phoneアプリ開発を経て、現在はWindowsストアアプリを多数公開中。
Microsoft MVP for Development Platforms - Client App Dev (Oct 2003-Sep 2012)。
Microsoft MVP for Development Platforms - Windows Phone Development(Oct 2012-Sep 2013)。
Microsoft MVP for Development Platforms - Client Development(Oct 2013-Sep 2014)。
Microsoft MVP for Development Platforms-Windows Platform Development (Oct 2014-Sep 2015)。
『Unity4.x アセット活用術: Asset Storeから落としたAssetを自分の作品の中で使用する方法』(Kindleストア)
『Unity4.xプログラミングTips集: Asset StoreからインポートしたAssetの使い方を徹底解説』(Kindleストア)
『Unity Scriptの基本+Unity Script Tisp集』(Kindleストア)
『Unity初めの一歩: 超初心者のためのUnity入門』(Kindleストア)
『Unity4.x入門+プログラミングTips集: 初心者から中級者対応。Assetの使い方を徹底解説』(Kindleストア)
Copyright © ITmedia, Inc. All Rights Reserved.