知識0からのUnityShader勉強

知識0からのUnityShader勉強

UnityのShaderをメインとして、0から学んでいくブログです。

【UnityShader】ガウシアンブラー【1】 #64

前回の成果 soramamenatan.hatenablog.com CommandBufferを使用して、色を反転させた。 今回やること 今回はガウシアンブラーを使用して、ブラーをしていこうと思います。 参考サイト様 edom18.hateblo.jp 事前準備 まず、Scene上にQuadを配置して適当なスケ…

【UnityShader】CommandBufferで色を反転 #63

前回の成果 MatCapを理解した。 soramamenatan.hatenablog.com 今回やること CommandBufferを理解します。 CommandBuffer レンダリングパイプラインの様々なタイミングで処理を挟むことのできるものになります。 以下の画像の緑の点のタイミングでCommandBuf…

【UnityShader】MatCap #62

前回の成果 Behavior Treeでサンプルクラスを実装した。 soramamenatan.hatenablog.com 今回やること MatCapについて勉強します。 light11.hatenadiary.com 事前準備 以下アセットをAssetStoreからダウンロードします。 そして、BarrelをScene上に配置します…

【Behavior Tree】Behavior TreeをUnityで実装 【3】#61

前回の成果 各ノードの実装を行なった。 soramamenatan.hatenablog.com 今回やること rootノードを管理するクラスと実際に動かすサンプルのクラスを実装します。 BehaviorTreeController rootノードを管理するクラスとなります。 このノードがSuccessもしく…

【Behavior Tree】Behavior TreeをUnityで実装 【2】#60

前回の成果 Behavior Tree自体について学んだ。 soramamenatan.hatenablog.com 今回やること 各ノードの具体的な実装について紹介します。 ベースクラス 今回、各ノードを OnStart() OnRunning() OnFinish() で呼び出して処理していくので、基盤となるベース…

【Behavior Tree】Behavior TreeをUnityで実装 【1】#59

前回の成果 図形の移動を行なった。 soramamenatan.hatenablog.com 今回やること Behavior TreeをUnityで実装していきます。 まずは、Behavior Tree自体について学んでいきます。 Behavior Treeとは AIにおけるアルゴリズムの1つです。 Tree構造によって管理…

【UnityShader】図形の移動 #58

前回の成果 図形を描画した。 soramamenatan.hatenablog.com 今回やること 前回制作した図形を活かして移動処理を行っていこうと思います。 karanokan.info ソースコード Shader "Unlit/MoveFigure" { Properties { _MainTex ("Texture", 2D) = "white" {} }…

【UnityShader】様々な形 #57

前回の成果 お絵かきシェーダーで繰り返しを表現した。 soramamenatan.hatenablog.com 今回やること 今回は図形を描画していきます。 karanokan.info 事前準備 Scene上にPlaneを配置し、今回制作するマテリアルをアタッチします。 ソースコード Shader "Unli…

【UnityShader】お絵かきシェーダー【4】 #56

前回の成果 歪みを利用してお絵かきした。 soramamenatan.hatenablog.com 今回やること 引き続き、お絵かきシェーダーを学んでいきます。 docs.google.com 事前準備 Scene上にQuadを配置します。 ソースコード Shader "Unlit/Drawing_1" { Properties { _Mai…

【UnityShader】お絵かきシェーダー【3】 #55

前回の成果 極座標を使用して、お絵かきをした。 soramamenatan.hatenablog.com 今回やること 引き続き、お絵かきシェーダーを学んでいきます。 docs.google.com 事前準備 Scene上にQuadを配置します。 ソースコード Shader "Unlit/Drawing_1" { Properties …

【UnityShader】お絵かきシェーダー【2】 #54

前回の成果 お絵かきシェーダーを勉強した。 soramamenatan.hatenablog.com 今回やること 引き続き、お絵かきシェーダーを学んでいきます。 docs.google.com 事前準備 Scene上にQuadを配置します。 ソースコード Shader "Unlit/Drawing_1" { Properties { _M…

【UnityShader】お絵かきシェーダー【1】 #53

前回の成果 Imageのアウトラインの数を指定した。 soramamenatan.hatenablog.com 今回やること 表現の幅を増やすためにお絵かきシェーダーを学んでいきます。 docs.google.com 事前準備 Scene上にQuadを配置します。 ソースコード Shader "Unlit/Drawing_1" …

【UnityShader】Imageのアウトラインを動かす 【3】#52

前回の成果 Imageに添ってアウトラインを回転させた。 soramamenatan.hatenablog.com 今回やること アウトラインの数を指定します。 事前準備 Scene上にImageを配置します。 Imageに画像と今回制作するマテリアルをアタッチします。 画像はなるべく単純な形…

【UnityShader】Imageのアウトラインを動かす 【2】#51

前回の成果 アウトラインの元となる部分を回転させた。 soramamenatan.hatenablog.com 今回やること Imageに合わせたアウトラインを回転させていきます。 事前準備 Scene上にImageを配置します。 Imageに画像と今回制作するマテリアルをアタッチします。 画…

【UnityShader】Imageのアウトラインを動かす 【1】#50

前回の成果 Imageにアウトラインをつけた。 soramamenatan.hatenablog.com 今回やること 前回つけたアウトラインを動かそうと思います。 事前準備 Scene上にImageを配置します。 Imageに画像と今回制作するマテリアルをアタッチします。 Sceneのキャプチャ …

【UnityShader】Imageにアウトラインをつける #49

前回の成果 ノイズで背景を歪めました。 soramamenatan.hatenablog.com 今回やること UGUIのImageの画像にアウトラインをつけます。 github.com 事前準備 Scene上にImageを配置します。 Imageに画像と今回制作するマテリアルをアタッチします。 Sceneのキャ…

【UnityShader】ノイズシェーダー拡張 【4】#48

前回の成果 ノイズシェーダーでテクスチャを歪ませました。 soramamenatan.hatenablog.com 今回やること ノイズで背景を歪めます。 sasanon.hatenablog.jp 事前準備 Scene上にPlaneを配置し、今回制作したMaterialをアタッチします。 ソースコード Shader "U…

【UnityShader】ノイズシェーダー拡張 【3】#47

前回の成果 ノイズを使用して着色した。 soramamenatan.hatenablog.com 今回やること ノイズシェーダーを使用して、歪ませます。 sasanon.hatenablog.jp 事前準備 Scene上にPlaneを配置し、今回制作したMaterialをアタッチします。 ソースコード Shader "Unl…

【UnityShader】ノイズシェーダー拡張【2.5】#46

前回の成果 パーリンノイズについて理解した。 soramamenatan.hatenablog.com 今回やること 前回勉強したパーリンノイズを活かして、ノイズで着色をします。 sasanon.hatenablog.jp 事前準備 Scene上にPlaneを配置します。 そして、今回制作するmaterialをPl…

【UnityShader】ノイズシェーダー拡張 【2】#45

前回の成果 ノイズシェーダーを拡張して、ブロックノイズとバリューノイズを作った。 soramamenatan.hatenablog.com 今回やること パーリンノイズについて勉強します。 sasanon.hatenablog.jp cginc #ifndef EXTENSION_NOISE_UTIL #define EXTENSION_NOISE_U…

【UnityShader】ノイズシェーダー拡張 【1】#44

前回の成果 フローマップを制作した。 soramamenatan.hatenablog.com 今回やること ノイズシェーダーの拡張を行っていきます。 sasanon.hatenablog.jp cginc #ifndef EXTENSION_NOISE_UTIL #define EXTENSION_NOISE_UTIL #include "UnityCG.cginc" fixed2 TR…

【UnityShader】フローマップ #43

前回の成果 視差オクルージョンマップを完成させた。 soramamenatan.hatenablog.com 今回やること フローマップを制作します。 light11.hatenadiary.com 事前準備 Scene上にPlaneを配置します。 また、こちらの画像はMainTextureとFlowMapに使用します。 Mai…

【UnityShader】視差オクルージョンマッピング【2】 #42

前回の成果 視線によってuv値を変化させた。 soramamenatan.hatenablog.com 今回やること 前回の続きから学んでいきます。 coposuke.hateblo.jp ソースコード Shader "Unlit/OcclusionMap_2" { Properties { _MainTex ("Main Texture", 2D) = "white" {} _He…

【UnityShader】視差オクルージョンマッピング【1】 #41

前回の成果 法線マップを理解した。 soramamenatan.hatenablog.com 今回やること 視差オクルージョンマッピングを勉強します。 coposuke.hateblo.jp 事前準備 Scene上にQuadを配置します。 以下は今回の制作で使用するテクスチャです。 Main Texture Height …

【UnityShader】法線マップ #40

前回の成果 雪を降らせた。 soramamenatan.hatenablog.com 今回やること 法線マップを勉強します。 blog.applibot.co.jp 事前準備 Scene上にPlaneを配置し、Cameraから見えるように回転させてください。 こちらの画像はShaderのプロパティのNormalMapにアタ…

【UnityShader】雪を降らせる【2】#39

前回の成果 雪を降らせるソースコードのStartまで理解できた。 soramamenatan.hatenablog.com 今回やること 前回の続きからやっていきます。 参考サイト様 qiita.com ソースコード void LateUpdate() { var targetPosition = Camera.main.transform.Transfor…

【UnityShader】雪を降らせる【1】#38

前回の成果 雪を積もらせた。 soramamenatan.hatenablog.com 今回やること 雪を降らせます。 qiita.com ソースコード Script using UnityEngine; [RequireComponent(typeof(MeshFilter), typeof(MeshRenderer))] public class Snow : MonoBehaviour { privat…

【UnityShader】雪を積もらせる #37

前回の成果 レイマーチングでモーフィングを実装した。 soramamenatan.hatenablog.com 今回やること 今回は雪を実装していきます。 積もる表現 雪が降る表現 の2つを実装します。 先に積もる表現から行っていきます。 nn-hokuson.hatenablog.com 事前準備 下…

【UnityShader】レイマーチング入門【5】 #36

前回の成果 ソフトシャドウを実装した。 soramamenatan.hatenablog.com 今回やること レイマーチングで、モーフィングをします。 github.com モーフィングとは、 ある画像が滑らかに次の画像へと変化するように、複数の画像の中間の画像を生成して連続的に変…

【UnityShader】レイマーチング入門【4】 #35

前回の成果 レイマーチングでライティングができた soramamenatan.hatenablog.com 今回やること 前回制作したものにソフトシャドウを実装してみます gurutaka-log.com ソフトシャドウとは、 大きさを持つ光源や、間接光により生じる影である。 影はまったく…