Unity ParticleSystem Lesson:爆発
今回、爆発のエフェクト作成方法を紹介したいと思います。
※使用ソフトとバージョン
PhotoShop CC2015
Unity 2017.3.0f3
ここではテクスチャーを4枚使います。
1.eff_par.pngの円状の光テクスチャー
2.eff_ring.pngのリング状テクスチャー
3.eff_spark.pngの衝撃光テクスチャー
4.eff_smoke.pngの煙テクスチャー
※4.については、Unity ParticleSystem Lesson:舞い上がる煙の記事で作成方法を紹介
④Unityでエフェクト作成
1.Unity Material作成
Project Windowで、Create > Material
・Material名をeff_smoke_alphaと変える
ShaderをMobile/Particle/Alpha Blendedに設定
①で作成したeff_smoke.png テクスチャーを割り当てる。
・Material名をeff_smoke_addと変える
ShaderをMobile/Particle/Additiveに設定
①で作成したeff_smoke.png テクスチャーを割り当てる。
・Material名をeff_par_addと変える
ShaderをMobile/Particle/Additiveに設定
①で作成したeff_par.png テクスチャーを割り当てる。
・Material名をeff_ring_addと変える
ShaderをMobile/Particle/Additiveに設定
①で作成したeff_ring.png テクスチャーを割り当てる。
・Material名をeff_spark_addと変える
ShaderをMobile/Particle/Additiveに設定
①で作成したeff_spark.png テクスチャーを割り当てる。
2.Unity Particle System設定
パーティクルシステムを作成する
ParticleSystemを8つ作成します。
eff_burst_spark
L eff_burst_flash
L eff_burst_ring
L eff_burst_smoke_add
L eff_burst_smoke_add2
L eff_burst_smoke_alpha
L eff_burst_smoke_alpha2
L eff_burst_par_add
親:eff_burst_sparkの下記が設定です。
■ Mainモジュール
Duration:2.00
Start Lifetime: 0.15
Start Speed: 0
Start Size: 28
Start Rotation: 0, 360 (Random Between Tow Constants)
Start Color: FF911CFF
■ Emission:Rate over Time 0, Bursts:Time 0.000 Count 1
■ Shape: Off
■ Color over Lifetime:
Alpha:255, Location: 0%
Alpha:107, Location:12.1%
Alpha: 0, Location:100%
Color:FFFFFF, Location:0%
Color:FF0000, Location:100%
■ Size over Lifetime:
time:0 value:0.7938461
time:1 value:0
■ Renderer
Material : eff_spark_add
Sorting Fudge:-10
Max Particle Size 5
子:eff_burst_flashの下記が設定です。
■ Mainモジュール
Duration:2.00
Start Lifetime: 0.15
Start Speed: 0
Start Size: 30
Start Rotation: 0, 360 (Random Between Tow Constants)
Start Color: FF911CFF
■ Emission:Rate over Time 0, Bursts:Time 0.000 Count 1
■ Shape: Off
■ Color over Lifetime:
Alpha:255, Location: 0%
Alpha:107, Location:12.1%
Alpha: 0, Location:100%
Color:FFFFFF, Location:0%
Color:FF0000, Location:100%
■ Size over Lifetime:
time:0 value:0.7938461
time:1 value:0
■ Renderer
Material : eff_par_add
Sorting Fudge:-10
Max Particle Size 5
子:eff_burst_ringの下記が設定です。
■ Mainモジュール
Duration:2.00
Start Delay: 0.05
Start Lifetime: 0.3
Start Speed: 0
Start Size: 15
Start Rotation: 0
Start Color: 9A0000FF
■ Emission:Rate over Time 0, Bursts:Time 0.000 Count 1
■ Shape: Off
■ Color over Lifetime:
Alpha:255, Location: 0%
Alpha: 68, Location:15.6%
Alpha: 0, Location:100%
Color:FFFFFF, Location:0%
Color:FFFFFF, Location:100%
■ Size over Lifetime:
time:0 value:0.618468
time:0.3070831 value:0.9015369
time:1 value:1
■ Renderer
Material : eff_ring_add
Sorting Fudge:0
Max Particle Size 5
子:eff_burst_smoke_addの下記が設定です。
■ Mainモジュール
Duration:2.00
Start Delay: 0.05
Start Lifetime: 0.6, 1.5 (Random Between Tow Constants)
Start Speed: 5, 25 (Random Between Tow Constants)
Start Size: 10, 13 (Random Between Tow Constants)
Start Rotation: 0, 360 (Random Between Tow Constants)
Start Color: FFFFFFFF
Gravity Modifier: -1, -0.2 (Random Between Tow Constants)
■ Emission:
Rate over Time 0
Bursts:Time 0.000 Count 30
Bursts:Time 0.050 Count 10
■ Shape
Shape: Sphere
Radius:0.01
Radius Thickness:1
■ Limit Velocity over Lifetime
Speed:右下下がりのCurve
time:0 value:1
time:1 value:0
Dampen:0.1
■ Color over Lifetime:
Alpha:255, Location:16.2%
Alpha: 0, Location:100%
Color:FFFFFF, Location:0%
Color:FFFF00, Location:4.4%
Color:FF6F00, Location:8.2%
Color:FF0000, Location:100%
■ Size over Lifetime:
time:0 value:0.7015381
time:1 value:1
■ Rotation over Lifetime
Angular Velocity: -90, 90 (Random Between Tow Constants)
■ Renderer
Material : eff_smoke_add
Sort Mode: By Distance
Sorting Fudge:0
Max Particle Size 0.5
子:eff_burst_smoke_add2の下記が設定です。
■ Mainモジュール
Duration:2.00
Start Delay: 0.05
Start Lifetime: 0.6, 0.5 (Random Between Tow Constants)
Start Speed: 5, 20 (Random Between Tow Constants)
Start Size: 15, 10 (Random Between Tow Constants)
Start Rotation: 0, 360 (Random Between Tow Constants)
Start Color: FFFFFFFF
Gravity Modifier: -1, -0.2 (Random Between Tow Constants)
■ Emission:
Rate over Time 0
Bursts:Time 0.000 Count 5
Bursts:Time 0.050 Count 3
■ Shape
Shape: Sphere
Radius:0.01
Radius Thickness:1
■ Limit Velocity over Lifetime
Speed:右下下がりのCurve
time:0 value:1
time:1 value:0
Dampen:0.1
■ Color over Lifetime:
Alpha:255, Location:16.2%
Alpha: 0, Location:100%
Color:FFFFFF, Location:0%
Color:FFFF00, Location:4.4%
Color:FF6F00, Location:8.2%
Color:FF0000, Location:100%
■ Size over Lifetime:
time:0 value:0.7015381
time:1 value:1
■ Rotation over Lifetime
Angular Velocity: -90, 90 (Random Between Tow Constants)
■ Renderer
Material : eff_smoke_add
Sort Mode: By Distance
Sorting Fudge:-10
Max Particle Size 0.5
子:eff_burst_smoke_alphaの下記が設定です。
■ Mainモジュール
Duration:2.00
Start Delay: 0.05
Start Lifetime: 1, 2 (Random Between Tow Constants)
Start Speed: 5, 50 (Random Between Tow Constants)
Start Size: 15, 13 (Random Between Tow Constants)
Start Rotation: 0, 360 (Random Between Tow Constants)
Start Color: B6B6B6FF, 838383FF (Random Between Tow Colors)
Gravity Modifier: -3, -1 (Random Between Tow Constants)
■ Emission:
Rate over Time 0
Bursts:Time 0.000 Count 20
Bursts:Time 0.050 Count 10
Bursts:Time 0.100 Count 10
■ Shape
Shape: Sphere
Radius:1
Radius Thickness:1
■ Limit Velocity over Lifetime
Speed:右下下がりのCurve
time:0 value:1
time:1 value:0
Dampen:0.2
■ Color over Lifetime:
Alpha:255, Location:17.4%
Alpha: 0, Location:100%
Color:C9C9C9, Location:0%
Color:000000, Location:55.0%
■ Size over Lifetime:
time:0 value:0.7015381
time:1 value:1
■ Rotation over Lifetime
Angular Velocity: -45, 45 (Random Between Tow Constants)
■ Renderer
Material : eff_smoke_alpha
Sort Mode: None
Sorting Fudge:50
Max Particle Size 0.5
子:eff_burst_smoke_alpha2の下記が設定です。
■ Mainモジュール
Duration:2.00
Start Delay: 0.05
Start Lifetime: 1, 2 (Random Between Tow Constants)
Start Speed: 5, 50 (Random Between Tow Constants)
Start Size: 15, 13 (Random Between Tow Constants)
Start Rotation: 0, 360 (Random Between Tow Constants)
Start Color: EAE9E9FF, A1A1A1FF (Random Between Tow Colors)
Gravity Modifier: -3, -1 (Random Between Tow Constants)
■ Emission:
Rate over Time 0
Bursts:Time 0.000 Count 10
■ Shape
Shape: Sphere
Radius:1
Radius Thickness:1
■ Limit Velocity over Lifetime
Speed:右下下がりのCurve
time:0 value:1
time:1 value:0
Dampen:0.2
■ Color over Lifetime:
Alpha: 0, Location: 0%
Alpha:255, Location:11.2%
Alpha: 0, Location:100%
Color:FF4F00, Location:0%
Color:989898, Location:17.9%
Color:000000, Location:55.0%
■ Size over Lifetime:
time:0 value:0.7015381
time:1 value:1
■ Rotation over Lifetime
Angular Velocity: -45, 45 (Random Between Tow Constants)
■ Renderer
Material : eff_smoke_alpha
Sort Mode: By Distance
Sorting Fudge: -10
Max Particle Size 0.5
子:eff_burst_par_addの下記が設定です。
■ Mainモジュール
Duration:2.00
Start Delay: 0.05
Start Lifetime: 0.5, 1 (Random Between Tow Constants)
Start Speed: 30, 80 (Random Between Tow Constants)
Start Size: 0.1, 0.2 (Random Between Tow Constants)
Start Rotation: 0
Start Color: FF4F4FFF
Gravity Modifier: 3
■ Emission:
Rate over Time 0
Bursts:Time 0.000 Count 80
■ Shape
Shape: Sphere
Radius:1
Radius Thickness:1
■ Limit Velocity over Lifetime
Speed:1
Dampen:0.1
■ Size over Lifetime:
time:0 value:1
time:1 value:0
■ Renderer
Render Mode: Stretched Billboard
Length Scale : 5
Material : eff_par_add
Sort Mode: None
Sorting Fudge: 0
Max Particle Size 0.5
3.完成!
結構長い記事になりました。
最後まで読んでくださいまして、ありがとうございます!
サンプルは、下記にアップしています。
GitHub
GitHub:eff_burst_sample.unitypackage
よかったら試してみてください!
こちらの本もよろしくお願いいたします!
Unity ゲームエフェクト入門 Shurikenで作る! ユーザーを引き込む演出手法 (Smart Game Developer)
- 作者: ktk.kumamoto
- 出版社/メーカー: 翔泳社
- 発売日: 2016/04/20
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る