SuiTechLog

Unity,Arduino,RaspberryPiなど、モノづくり系を気ままに書き残すブログ。

shader

Unity シェーダーでスパイクノイズのお勉強

ひさしぶりのUnityシェーダーのお勉強をいたしました。 スパイクノイズは以下のサイトを参考制作させていただきました。

Unityのシェーダーを3dsMaxのビューポートシェーダーへ移植する その4 設定編

前回の続きです。 前回書き損ねていた点を追記します。 Normal画像読み込み設定 Normal画像を読み込むときは以下のGamma1の設定にオーバーライドします。 こうしないとNormal画像にガンマがかかって正しい凹凸がでません。

シェーダー書きはじめTIPs(おもにUnity)

最近は誰でもシェーダーが書ける時代になりました。処理を軽くするためのルールがあるようなのでそのいくつかをメモしておきます。(今後も増える予定です。)ピクセルシェーダー(フラグメントシェーダー)は1ピクセル毎に処理されるため、ちょっとの不手際…

Unityのシェーダーを3dsMaxのビューポートシェーダーへ移植する その3 頂点シェーダー・フラグメントシェーダー

前回の続きです。 今回は頂点シェーダー部分とフラグメントシェーダー(ピクセルシェーダー)部分を3dsMaxへ移植するメモです。 頂点シェーダーでの処理の比較 頂点座標(プロジェクション空間) Unity UnityObjectToClipPos(v.vertex) mul(UNITY_MATRIX_MVP…

Unityのシェーダーを3dsMaxのビューポートシェーダーへ移植する その2 プロパティ・ライト情報・入力データセマンティクス

さて。前回得た情報を元にUnityのシェーダーを3dsMaxへ移植していきます。 それぞれ移植するための対応表をメモしておきます。 GUIへのプロパティの移植 プロパティをGUIに表示する対応表は以下の通りです。 Unity //Texture2D _BaseMap ("BaseMap", 2D) = "…

Unityのシェーダーを3dsMaxのビューポートシェーダーへ移植する その1

ということをしましたので、備忘録。 Unityのシェーダーは"UnityCG.cginc"などによって難しい処理をカバーしていて、かなりラクできるようになっています。3dsMaxで書く場合はそう言った部分を自分でやらないといけないのと、3dsMax独自のセマンティクス等も…

Unity スクリプトから複数のシェーダーの値を一気に変更する

概要 シェーダーに記述したフォグの数値を、複数のオブジェクトで変更しようと、スクリプトにシーン内のマテリアルの数だけ繰り返すスクリプトを書いたのですが どうやらそれよりもっとイージーな方法があったようです。 Shader.SetGlobalFloat("パラメータ…

Unityで、頂点カラーを使ってみる

前回の記事では、頂点カラーのアルファを使いました。今回は、基本に戻って頂点カラーを使って少し遊んでみることにします。 さて、早速頂点カラーを適当にぬりたくった球体を用意しました。 当然ながらUnityのデフォルトシェーダーではただのグレーボールで…

Unityでライティングのかからないシェーダ作り

シェーディングのかからないイラスト風の見た目にしたい! このような感じのイラスト風のぺったんこです。 今回は、Unityのデフォルトシェーダーと、波の表現など一部で使いました頂点カラーを利用したシェーダーについて説明します。 なお、ゲーム本編はこ…