[Unity] 今年個人的に買ったアセット紹介2017

この記事は モバイルファクトリー Advent Calendar 2017 20日目の記事です。
前日は @yashims85 さんの[「Kotlin/Nativeを触ってみた」](https://qiita.com/yashims85/items/c2b3b0685cb43046eff3)でした。

- 表題の通り、今年個人的に買ったアセットの中からいくつか抜粋して紹介します。
- 2017年にリリースしたアセット以外も含まれます。
- 見た目系に偏っていますが気にしない。
- **会社で開発しているアプリ/プロジェクトとは関係ありません。**

# Curved World
![image.png](https://qiita-image-store.s3.amazonaws.com/0/102664/d4b310cd-2ca6-5574-a0be-9c74cb7de856.png)

[Curved World](https://assetstore.unity.com/packages/vfx/shaders/curved-world-26165)は平面のマップを球体/ロール状に変形するアセットです。

具体的には変形対象のオブジェクトに専用のMaterialをアタッチすることでメッシュに歪む効果を提供します。イメージエフェクトではないため、UIは除外するなど変形対象を精査することが出来ます。

![curve_world.gif](https://qiita-image-store.s3.amazonaws.com/0/102664/4db0f6e9-e528-ab3e-91a4-2f7e2eaeb42a.gif)

# SpriteToParticles
![image.png](https://qiita-image-store.s3.amazonaws.com/0/102664/dc76505a-517c-3c37-022f-18a5dd55f0d2.png)

[SpriteToParticles](https://assetstore.unity.com/packages/tools/particles-effects/spritetoparticles-69765)はSpriteの形状を元にParticleを生成することで、そのSpriteの形状を元にしたエフェクトを手軽に生成することができるアセットです。

![s2p.gif](https://qiita-image-store.s3.amazonaws.com/0/102664/9cba360d-4bd9-e0f3-0802-4e3123ccb981.gif)

# Character Particle
![image.png](https://qiita-image-store.s3.amazonaws.com/0/102664/322c4848-5681-61e1-519c-020c6625dda4.png)

[Character Particle](https://assetstore.unity.com/packages/vfx/particles/character-particle-95555) は [@onotchi_](https://twitter.com/onotchi_)さんが製作されたアセットです。
事前にBitmapFontGenerator等の外部ツールで任意のフォントからBitmapFontを生成しておく必要がありますが、独自の表現を実装することができます。

![charactor.gif](https://qiita-image-store.s3.amazonaws.com/0/102664/2beb6837-437c-915b-356c-6b0f0ad24d9c.gif)

# 2D Dynamic Lights and Shadows - 2DDL PRO
![image.png](https://qiita-image-store.s3.amazonaws.com/0/102664/f6de6555-f3a4-0ac8-0940-f59048ab4859.png)

[2DDL PRO](https://assetstore.unity.com/packages/tools/particles-effects/2ddl-pro-2d-dynamic-lights-and-shadows-25933) は2Dにおける光と影の表現を実現するアセットです。
[Unity1週間ゲームジャム](https://unityroom.com/unity1weeks) でこのアセットを使用した [oneline](https://unityroom.com/games/oneline
) というゲームを作りました。

![oneline.gif](https://qiita-image-store.s3.amazonaws.com/0/102664/e46f24a0-cdeb-dcf3-dfff-c79ee31dc4ad.gif)

# WRLD Unity SDK
![image.png](https://qiita-image-store.s3.amazonaws.com/0/102664/c70078e3-cb70-d170-f158-7915533b97a0.png)

[WRLD Unity SDK](https://assetstore.unity.com/packages/tools/modeling/wrld-unity-sdk-86284) は実際の建物情報を用いてMeshを生成するのアセットです。
以前Qiitaに記事を書いたので、そちらをご参照ください。

[[Unity] WRLD Unity SDKで地図情報に基づいた建物を表示する](https://qiita.com/lycoris102/items/f9edd8728c1f2966debb)

![wrld.gif](https://qiita-image-store.s3.amazonaws.com/0/102664/c5c933dc-580d-f071-ef25-3f5ae154fa6a.gif)

# Behavior Designer
![image.png](https://qiita-image-store.s3.amazonaws.com/0/102664/47de5ca5-3b4d-6739-e567-d20ee573b862.png)

[Behavior Designer](https://assetstore.unity.com/packages/tools/visual-scripting/behavior-designer-behavior-trees-for-everyone-15277) はAIを実装するための手法の1つであるBehavior TreeをUnity上で実現するためのアセットです。
状態と振る舞いを定義することで意思決定を行わせることが出来ます。
[@toRisouP](https://twitter.com/torisoup) さんの以下のスライドを見て、良さそうと思って購入したものの、正直まだ手をつけられていないアセットです。

[【自作ゲーム】 Behavior TreeでAIを作る 【Unity】](https://niconare.nicovideo.jp/watch/kn2055)

# Polyquest Worlds Full Pack Vol.1
![image.png](https://qiita-image-store.s3.amazonaws.com/0/102664/a58f8c69-cab8-029b-9328-7ab80be276de.png)

[Polyquest Worlds Full Pack Vol.1](https://assetstore.unity.com/packages/3d/polyquest-worlds-full-pack-vol-1-74631) はローポリの地形アセットのパックです。
ライティングまで調整されたサンプルシーンはまさにアートです。
(能力不足でこれをどうゲームに落とし込もうかは悩ましい)

![low.gif](https://qiita-image-store.s3.amazonaws.com/0/102664/fbba70fc-3cce-27b5-02a8-ec15d385d7fc.gif)

![low2.gif](https://qiita-image-store.s3.amazonaws.com/0/102664/b865f78c-bfc8-7be4-c6fb-4ceed8a67e36.gif)

# Stain System
![image.png](https://qiita-image-store.s3.amazonaws.com/0/102664/d936483c-684a-6c18-617a-d89c521cbf8a.png)

[Stain System](https://assetstore.unity.com/packages/tools/particles-effects/stain-system-67146)は Stain(=染色)が指す通り、インクを撒き散らしたような表現を実装することができます。
2Dのゲームにも3Dのゲームにも適応できるのが特徴です。

![ss1.gif](https://qiita-image-store.s3.amazonaws.com/0/102664/1c5f3225-f074-a253-ba7a-97a36473903c.gif)

![ss2.gif](https://qiita-image-store.s3.amazonaws.com/0/102664/dfc7b2bf-107c-5f52-ced0-0915d8758b49.gif)

# Chronos
![image.png](https://qiita-image-store.s3.amazonaws.com/0/102664/79117b45-f737-359e-1438-ab865325e277.png)
[Chronos](https://assetstore.unity.com/packages/tools/particles-effects/chronos-31225)は時間制御アセットです。
2015年のUnityAssetAwardを受賞したアセットで、特定のオブジェクト（パーティクルや物理演算まで含む）に対して時間制御(巻き戻し/一時停止等)を実装することができます。

下記の動画を見ると雰囲気が分かると思います。
https://www.youtube.com/watch?v=-zq1OZuGXoc

# Volumetric Clouds
![image.png](https://qiita-image-store.s3.amazonaws.com/0/102664/28afc4b0-4757-a32e-afaa-1ab2142bb104.png)
[Volumetric Clouds](https://assetstore.unity.com/packages/vfx/shaders/volumetric-clouds-25527)は3Dの雲のMeshを生成するアセットです。
CameraにScriptをアタッチし、用意されたMaterialを指定するだけで手軽に雲を描画させることができます。

![volumedcloud.gif](https://qiita-image-store.s3.amazonaws.com/0/102664/b779e318-5bc4-ab4e-e4d2-41968392cf98.gif)

# 2DxFX: 2D Sprite FX
![image.png](https://qiita-image-store.s3.amazonaws.com/0/102664/9ff2528b-4397-572e-51db-f1ffb4cdd47b.png)

[2DxFX: 2D Sprite FX](https://assetstore.unity.com/packages/tools/sprite-management/2dxfx-2d-sprite-fx-42566) はSpriteに適応できるエフェクト(Shader)集です。
SpriteRenderer、もしくはUI.Imageと合わせてコンポーネントをアタッチするだけで簡単にエフェクトを適応することができます。

![2dfx.gif](https://qiita-image-store.s3.amazonaws.com/0/102664/40c3bf17-bd77-e080-d628-c2891756a02d.gif)

# 最後に
ゆるゆると今年購入したアセットを紹介してみました。いかがでしたでしょうか。
明日は @shioiyan さんの[「Natural Language APIをSlackbotに導入してみた」](https://qiita.com/shioiyan/items/8b41ca093129873f9159)お話です。
相性良さそうな組み合わせで楽しそう！