Unity内でlive2dのモデルを半透明化して表示する方法(Render Texture使用)

どこぞのフォーラムにRenderTextureを使えば簡単に透明化できると書いてあったのですが、肝心のやり方がどこにも書かれてなかったのでやったついでに書いておきます。
(スクリプト0でunityの機能のみでやっていてすごいと思うのですが、
普段使わない機能を使ったのでだいぶ難儀でした。)

環境 および 事前知識

環境
・Unity 2018 3.11f1
・Live2D model

この記事を見るべき人
・live2dのモデルをunityで表示したが半透明にする方法がわからない
(ポリゴンの切れ目が半透明化してくれない。)
・Render Textureの使用例を見たい人

やり方

セットアップ

とりあえず、本記事では最低環境でやりますが、この記事を見る多くの人はすでに環境はあると思います。
・Main camera(Display1として表示 背景色を変更)
・live2d model (今回は桃瀬ひより公式サンプルを使用)

必要なフォルダ等を作成

適当にフォルダを作っておきます
私はフォルダ名は「RenderTexture」にしました。

その後ファイル内にRenderTextureを作成します。
フォルダ内にて右クリック>Create>RenderTextureを選択し、適当に名前を付けます。
私は「Render」にしました。

Render Textureの詳細設定

つくったRender Texture(名前:Render)をInspectorで見てみると
sizeなどを変更することができます。
これらを変更すると、レンダリングする際の設定を変更できます。
今回はsizeのみ1024×1024にします。(初期値256×256?)
この値を変更することで、レンダリングした結果をそのサイズで残すので
ぼけた画像にならないと思います。(なるようでしたらもっと大きい値にしてください。)
そのほかパラメータについては公式のリファレンスをどうぞ

レンダリング用カメラを設定

今あるメインカメラをコピーしてリネームでRenderCameraにでもしておきます。
同時にRenderCameraのInspectorでTargetTextureを先ほど作成したRenderにしておきます。

この時点で先ほどまで真っ黒だったRenderに何か移っているはずです。

2.5 レンダリングしたTextureをRawImageとして記憶する。

Sence内にCanvasとその子要素としてRawImageを作成します。
(EventSystemはCanvas作成時勝手に作られます。)

RawImageを設定から
Width Heigthを3000程度に(キャンパス内のサイズになります)
TextureをRenderTexture(名前:Render)にします。

Canvasの表示法をカメラに依存させることで表示させる

ちょっとややこしいですが
Canvasの設定からRender Modeを「Screen Space -Camera」にします。
その後Render cameraにMainCameraを設定します。
Render Modeについては
[【Unity】uGUIのCanvasとRenderModeについて]この方が大変わかりやすかったです。

MainCameraをちょっと移動させる

何いってるかわからないでしょう
画像を見れば少しはわかるかもしれません。
右がオブジェクトとしてのひよりちゃんで
中央にいるのが、それを撮影(レンダリング)してでた結果です。
実際に使用する際はもっと位置を変更させて、やるべきかと思いますが今回はわかりやすいようにしています。

Textureを透明化させる

やっとかよという感じですが
RawImageの設定からColor aRGB値のalpha値が透明度なので変更すればOKです。
(ちょっと画像荒いです。ごめんなさい)