スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

今週の新刊

まとめて漫画買ってきた。
・テラフォーマーズ2巻。
・どげせんR1巻
・あやかし古書庫と少女の魅宝1巻
・宮田書店へようこそ
・デンキ街の本屋さん3巻

以下、感想

続きを読む

スポンサーサイト

Unityシェーダ講座④

主に自分が勉強と復習するために始めたUnityのシェーダ講座。入門編。

さて、前回UVのオフセットやりましたけれどコレは実際のところシェーダを駆使しなくても出来ます。
マテリアルのテクスチャの項目のところに

・Tiling
・Offset

の二つの項目があります。この中の、Offsetの数値を書き換えることで難なく実装できます。
なので、そっちを使った方が固定オフセットしかしない場合には現実的です。シェーダでのオフセットの利点はもうちょっとだけトリッキーなことが出来るところです。例えば、

四角形のポリゴンがあったとして
(0,0) (1,0)
(1,0) (1,1)
とUVを設定したとします。このUVにそれぞれスケール0.5をかけることによって
(0,0) (0.5,0)
(0.5,0) (0.5,0.5)
とすることが出来ます。これとオフセットの応用によってある程度のUVの指定は出来るようになります。

使いどころはかなり限られてはきますけれども。





Unityシェーダ講座③

主に自分が勉強と復習するために始めたUnityのシェーダ講座。入門編。

今回はUV座標のオフセット。

基本的にシェーダ側で万能なUVのオフセットをかけることは出来ません。

制限はバリバリあります。どうしても万能なUVアニメーションをしたい場合には頂点情報そのものに手を加える必要があります。そっちはシェーダ無関係なんで自分で調べてください。

シェーダでUVのオフセットをする場合に使えるのはピクセルシェーダ側で入力されたUVの数値にオフセットをかける処理です。なので基本的にはポリゴンの頂点全部同じ数値をかける処理となります。

ピクセル部分以外はコレまでのシェーダと同じで何もする必要はありません。

Inputs -> Add New Input -> Float4 Property

名前は適当に_UVOffsetとします。

Pixel Graph で

Operation -> Add
Property -> Float4 -> 選択しNode -> Input Property -> _UVOffset

したものを以下の様につなげます。

easy03

これで_UVOffsetで入力した数値の

XがUに加算
YがVに加算

されて出力されます。結果だけを見ると頂点単位でオフセットかけているように勘違いするかも知れませんがあくまでピクセルシェーダですのでピクセル単位でUVのオフセットです。そこを勘違いしないようにしてください。

このシェーダを応用すれば、モデルの口パクなども行えるようになります。しかし、現状ではあくまでオフセット処理なので幅と高さを同じにする必要があります。ですが、それでほぼ問題にはならないと思います。

プロフィール

masanotooru

Author:masanotooru
雪国で働くプログラマでしたが、会社を辞めて関西にいます。
プログラムの話もしますが漫画が好きなので漫画の話をします。
バイクを買ったので、そっちの話も増えました。
最近はUnityばかりなのでそっちメイン。

Google Adsense
検索フォーム
カテゴリ
最新コメント
メールフォーム

名前:
メール:
件名:
本文:

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。