【Unityアセット冬のアドカレ2019】Low Poly Water GPUを紹介

この記事は[Unityアセット冬のアドベントカレンダー 2019 Winter！](http://assetstore.info/asset-advent-calendar-2019-winter/)、15日目の記事になります。

昨日は[Eilzyさん](https://twitter.com/tomasheep)さんの
「BlackFridayで買ったAssets「Unka the Dragon」と「RTSCamera」について紹介」でした。


## 概要
本日ご紹介したいアセットはLow Poly Water GPUです。
使い方簡単な低ポリウォーター(GPU)セットです。

[Low Poly Water GPU](https://assetstore.unity.com/packages/vfx/shaders/substances/low-poly-water-gpu-79255?utm_source=jppt&utm_medium20191215)
![01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/66a75a1a-32cc-6734-222c-d900c80ca8af.jpeg)


**機能（Google翻訳そのまま）：**
•GPUウェーブ計算（CPUなし）。
•カスタマイズ可能なウェーブとライティング。
•ショアブレンディング（フォーム）。
•平面反射（VR以外）。
•光吸収。
•影の受信。
•最大4ポイントライト。
•カスタム水メッシュ。
•最適化およびテスト済みモバイル。


## とりあえず遊んでみます
先に[Low Poly Ultimate Pack](https://assetstore.unity.com/packages/3d/props/low-poly-ultimate-pack-54733)をUnityに導入し、Low Poly Ultimate Packの水は実行しても動かないまま。
![01.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/3807f609-98e8-3a43-a060-1b7971b9e6a1.gif)

一旦島だけSceneに残り、
![スクリーンショット 2019-12-14 午後9.12.19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/350400e7-4f20-b856-6c05-86bef587aafe.png)

Low Poly Water GPU内は4つ違い種類のプレハブがあって、一旦LPWaterPerformanceを入れます。
![スクリーンショット 2019-12-14 午後9.16.19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/53337d2f-5728-3ac0-6a69-2ceff6b9a2bd.png)

プレハブのデフォルトサイズは(x,z)30x30で、小さいです。
![スクリーンショット 2019-12-14 午後9.16.52.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/2c5b190b-459e-70fb-431b-7dd021f36955.png)

(x,z)100x100を入れて、
![スクリーンショット 2019-12-14 午後9.19.20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/81929c2c-8926-5419-5a15-46780f06dab4.png)

FullHD Viewには満遍になります。
![スクリーンショット 2019-12-14 午後9.19.25.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/fd4c11f6-c9c6-481b-d41d-154169ef21f6.png)

この状態で実行してみたら、
LPWaterPerformance(gif)：
![02.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/8b98b4ba-9710-6f76-ca79-587194149387.gif)

**ほかの種類も実行**

LPWaterFoam(gif)：
![LPWaterFoam.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/5db18642-54be-37dd-b4e2-4c509da6f327.gif)

LPWaterHighQuality(gif)：
![LPWaterHighQuality.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/e4156050-2992-6e09-4b81-5515ebb637fa.gif)

LPWaterShadows(gif)：
![LPWaterShadows.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/5decef05-9c69-d860-31a5-b0847da72841.gif)


## コンポーネントの使い方法
公式ドキュメントはこちらです。
https://github.com/jolix/Low-Poly-Water/wiki

公式ドキュメントはGoogle翻訳で簡単に読めますので、この記事は主にメイン箇所だけピックアップします。

**プロパティ：Grid Type**
![スクリーンショット 2019-12-14 午後9.19.20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/247e4a37-7729-adfc-ae74-3d8b7c0b42bf.png)

- Hexagonal(六角形)：六角形の水平面を生成します。
- Square(正方形)： 正方形の水平面を生成します。
- Hexagonal LOD(六角形のLOD)：LODオプションで六角形の水平面を生成します。
- Custom(カスタム)：カスタムメッシュを使用できるようにします。

**プロパティ：Enable Reflection**
![スクリーンショット 2019-12-14 午後10.38.07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/4bfa95ab-5285-a77e-75ab-57e8060af4ce.png)

- 平面光の反射を有効にします。

![スクリーンショット 2019-12-14 午後10.40.59.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/95336568-2c95-2e8f-3c8e-74d92bba92db.png)
Enable Reflectionを付けたら、石の反射ができてました(ほかのは黒くて、違いさが区別できない(汗)...)。

**プロパティ：Waves**
Shaderのところで、波の速度、密度など自由にカスタマイズできます。
![スクリーンショット 2019-12-14 午後10.58.05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/588fc266-490c-aa0f-acfb-7dc78d424433.png)

Wavesのデフォルト(gif)：
![04.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/fa0cd6dc-2254-e1c3-a28b-426f4512e5ff.gif)

他には屈折、ライティング、深度など細かく設定でき、カスタマイズによって湖や川っぽいも作れます。

**湖っぽい(gif)**
![06.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/f9b5ed7d-6f6f-d40f-e1cd-2f11b2232c33.gif)

**川っぽい(gif)**
![05.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/473769/af8dac39-8542-9810-39b7-bac8141160b9.gif)


## 最後

あくまで入門ぐらい程度でこの記事を書きました。興味ある方は是非[Store](https://assetstore.unity.com/packages/vfx/shaders/substances/low-poly-water-gpu-79255?utm_source=jppt&utm_medium20191215)へ見てください。

明日は[さとやんさん](https://panzersoft.com/)の「IntroLoopで簡単にイントロ付きループBGMを作る」です。