youkantoe

Blenderのtexture座標ノードについて

2020 / 5 / 2

メモなので間違っている可能性があります。

全体について

  • テクスチャ座標のoutputはvec3が出ます。(青紫のやつ)

たぶんこんな感じ

{
  x : 1,
  y : 2,
  z : 3,
}

もしくはこんな感じ?

[1,2,3]

たぶん、3つの要素があるよくらいに思っておけばいいのだと思う

カラーもRGBなので一緒

カラーは普段の生活だと 0 - 255が馴染みが深いけど、

シェーダーの場合は、 0 -1 が基本なので注意が必要だと思う。

カラーとベクトル系の値は相互に計算ができる

生成

  • XYZの方向を持つ
  • 0 - 1に値の範囲限定されてる(たぶん)
  • オブジェクト固有の領域を持つ

    • ので、統一させるのはむずい
  • おそらくーーーだけども、オブジェクトのバウンディングボックスとかが基準になってるんかな?
  • オブジェクトのトランスフォームは関係ない

    • つまり拡大しても基準はかわらない(適用しても変わらない)
    • そこは使いやすいのかな?

image

生成はメッシュが変形すると、変わるので注意!

animation

UV

  • 平面にシェーダーお絵描きするとかならいいかも
  • 個人的にあまり使いやすくない印象(勝手に)

ノーマル

  • 法線です

オブジェクト

  • 生成と違ってオブジェクトのトランスフォームの影響を受ける

    • なので、拡大とか移動とか回転をapplyしてやると変わります
  • 一見、使いにくそうに見えて、かなり使いやすいやつだと信じてる

    • なぜ使いにくそうかというと、値自体が 0 - 1の範囲に収まらないので、それを解消してやらないと、つかいにくいからで、それが解消できれば使いやすい印象
  • オブジェクトのセンターに寄って、影響がきまるけども、上の生成と違って、グローバルのポジションという全体で共有しているパラメーターを元にしているため、他のものと共有していくことができると思う(思いたい)

    • なので、これが使いやすいのかなと思う
    • 特にフォグとかではこれが強いと思う(たぶん)

色のデータは0 - 1で表されるので、オブジェクトのように 0 - 1に収まらないものは、はっきりした感じになります…が、ちゃんと値を割ってあげたり、マッピングしてあげたりすると、値や色のでかたが緩やかになります。

image

ベクトル演算で、除算を行うと、ぼわっとして、境界線が見えるようになります。

image

オブジェクトのセンターが基準になっているため、ctrl + alt + shift +cからのカーソルを3dカーソルにや、ctrl + aでポジションを適用したりすると、変化するのがわかります。

image

生成とオブジェクトの違いはこの動画がわかりやすいかも

https://www.youtube.com/watch?v=9SzEPoiaOa4

カメラ

  • 少し特殊(?)で、Zに関しては、だいたいの場合は、1以上となるため、大抵は青色の感じになる。

    • その影響で若干わかりにくい

image

なので、ベクトル演算で、zのところを減算してあげると、赤(X)と緑(Y)の値が出てくるので、これでわかりやすくはなる

image

個人的に使いみちとして、XかYのどっちか(特にY?)に偏る気がするので、

image

xyz分離からの、範囲マッピングでこういう感じに一方向に使うのがメインかも

ウィンドウ

  • 使いにくそう…

反射

  • 普通は環境マッピングで使うらしい