Aizu-Progressive xr Lab blog

会津大学のVR部であるA-PxLの部員が持ち回りで投稿していくブログです。部員がそれぞれVRに関する出来事やVRにちなんだことについて学んだことを書いていきます。

連絡はサークルTwitterのDMへお願いします。
「面白法人カヤックVR分室」としても活動しています。詳細はこちら

Particle System

こんにちは。
今回のブログを担当するVR部部員のタマです。
ブログを書くのは初めてなので、どうか温かい目で見てください。


今回のテーマはパーティクルシステム です!!

f:id:aizu-vr:20170514010800p:plain

今回はUnity5.5で追加されたLightsモジュールの各種設定を見ていきたい思います

 

 

さっそく、CreateボタンからParticle Systemを押してInspectorを見てみます。

f:id:aizu-vr:20170514012107p:plainf:id:aizu-vr:20170514012114p:plain

すると、下の方にLightsモジュールが追加されてます!

f:id:aizu-vr:20170514012400p:plain

 

今回は光ってる感を分かりやすく表現するためにMain CameraにBloom スクリプトをつけました。

Bloom スクリプトはImport package から Effects をインポートすることで使えます。

f:id:aizu-vr:20170514012826p:plain

 

それでは、ライトモジュールを見てみましょう!!

これが初期状態です

f:id:aizu-vr:20170514012905p:plain

 

・Light

・Ratio

・Random Distribution

・Use Particle Color

・Size Affects Range

・Alpha Affects Intensity

・Range Multiplier

・Intensity Multiplier

・Maximum Lights

 

と、9つの項目があります。

 

Light

これはパーティクル1つ1つにどのようなライトをつけるか設定できます。

このLightで使えるライトは Spotlight か Point light しか使えません。

そして、このライトはシーン内もしくはPrefabにないと使えません。

 

実際に、Point light を Prefab 化してつけてみます。

f:id:aizu-vr:20170514013610p:plainf:id:aizu-vr:20170514013618p:plain

 

こんな感じで、パーティクル1つ1つにPoint light がつきました。

パーティクルの下辺りが光っています

f:id:aizu-vr:20170514013754p:plain

 

 

Ratio & Maximum Lights

Ratioは生成されるパーティクルがどのぐらいの割合でライトを持っているかを設定することができます。

Maximum Lights はライトを表現できる最大数です。

しかし、Ratioを1に設定して、Maximum Lightsを十分大きな数(300ぐらい)にしても全てのパーティクルにライトがつきません。

f:id:aizu-vr:20170514014027p:plainf:id:aizu-vr:20170514014033p:plain

 

いろいろ調べた結果、Renderingの設定でどうにかできるらしいです。

カメラのRendering PathをForwardに設定している場合、一度に置けるライトに制限があるらしいです。

これを変更するためには、Project Settings > Quality の Pixel Light Count の値を変更すれば一度に置けるライトの数を増やすことができます。

f:id:aizu-vr:20170514014231p:plain

やってみると見事全部にライトがつきました!

しかし、ライトはとても重い処理なので数には注意が必要です。

 

Use Particle Color

Use Particle Color は On にするとパーティクルの色が光に影響します.

 

f:id:aizu-vr:20170514014635p:plainf:id:aizu-vr:20170514014641p:plain

 

Size Affects Range

パーティクルが大きければ光の影響する範囲が大きくなります。

 

Alpha Affects Intensity

Onにすると、パーティクルのアルファ値が小さければ輝度が下がり、アルファ値が大きければ輝度も上がります。

f:id:aizu-vr:20170514014938p:plainf:id:aizu-vr:20170514014943p:plain

 

Range Multiplier & Intensity Multiplier

Range MultiplierとIntensity Multiplierはそれぞれ手動で光の範囲と輝度を設定することができます。

これはPrefab化したLightの設定をいじってもできます!

 

今回はこの辺で終わりたいと思います。

時間があったらこの機能を使って何か作ってみたいと思います。

 

 

 

 

 

会津大学VR部の部員が持ち回りで投稿していくブログです。特にテーマに縛りを設けずに書いていきます!