パーリンノイズ
https://gyazo.com/70b9a6e61e1ac1e2c0467f16257615e6
地形生成に使えそうななだらかなノイズ
完全なランダムではなく、入力値に応じてなだらかに変化する。
Mathf.PerlinNoise - Unity スクリプトリファレンス
Perlin Noise これはパーリンノイズではなく、バリューノイズ
フラクタル地形自動生成
作り方とか概念的な所
http://edom18.hateblo.jp/entry/2018/10/11/140401#複数オクターブを利用した表現の拡張
Unityのスクリプトでの実装
code:cs
// 地形生成に使う時
// 2Dなら地面の有無、3DならZ座標の高さ。など
Mathf.PerlinNoise(x, y); // 値域は0〜1
// 時間変化に使う時
float frequency = Time.time * frequencyRate; // frequencyRateで振幅の速さ
Mathf.PerlinNoise(frequency, _seed.x); // _seedは固定値
Unityのシェーダでの実装
http://www.shaderslab.com/demo-74---2d-perlin-noise.html
概念と合わせれば3D化もいけそう
上のシェーダを書くと見通しが悪すぎるので、別ファイルに分ける事も出来る
【Unityシェーダー】よく使うシェーダー関数はcgincを作ると便利
その他シェーダで色々なノイズ
http://nn-hokuson.hatenablog.com/entry/2017/01/27/195659
Unityシェーダのリファレンスいろいろ
定義済みシェーダープリプロセッサーマクロ
ビルトインのシェーダー変数
ビルトインシェーダーヘルパー機能
上の一覧に無い関数(Math系のsinとか)はHLSLのリファレンスから索引を引けば良いみたい
https://docs.microsoft.com/ja-jp/windows/win32/direct3dhlsl/dx-graphics-hlsl-intrinsic-functions
Minimum shader modelと書いてある欄が、実行環境のバージョンを指定するようで、Unityの場合デフォルトは2.5だそう
Gc/HLSLの外側に関する事
http://mugichoko.hatenablog.com/entry/2019/02/28/031807
資料集
Unityシェーダーについて勉強したい時に、まず見るべきサイトをまとめてみた
パーリンノイズを使った作例
https://qiita.com/TakashiHamada/items/e34ff9c2224d4d98a283
https://ics.media/entry/18812/
https://infosmith.biz/blog/it/p5js-noise
https://blogs.unity3d.com/jp/2018/05/29/procedural-patterns-you-can-use-with-tilemaps-part-i/
https://thebookofshaders.com/13/?lan=jp
https://coliss.com/articles/web-services/online-background-generator-and-freebies-background-pattern.html
https://wgld.org/d/canvas2d/c002.html
http://quadlightning.sblo.jp/article/48261258.html
http://marupeke296.com/ALG_No3_PerlinNoize.html
[パーリンノイズを使ってアニメーションにランダムなゆらぎを与える【Unity】 - (:3kanのメモ帳
https://twitter.com/sekido_mg/status/1406066857166073862
1次元のパーリンノイズ 解説
http://karanokan.info/2019/02/16/post-2202/
生成したノイズを色々いじくって観察したもの
謎模様ジェネレータ
参考資料
http://a-i-to.hatenablog.jp/entry/2014/09/08/225604
https://github.com/a-i-to/perlin-noise-sample/blob/master/perlin_noise2.html
JavaScript向けライブラリ
SimplexNoise
Unity向けライブラリ
keijiro/NoiseShader: Noise shader library for Unity
値域は多分 -1 ~ 1