タグ

shaderとnormalmapに関するedo_m18のブックマーク (2)

  • 【Unity】【シェーダ】ノーマルマップのZ値を利用した発光表現テクニック - LIGHT11

    UnityのシェーダでノーマルマップのZ値を使って情報量を増やした発光表現を紹介します。 やりたいこと ノーマルマップのZ値を使って情報量を増やす レンダリング結果 関連 Unity2019.2.10 やりたいこと いま、下図のようなモデルが描画されているとします。 ゲームでは、武器やキャラクターの演出で輪郭部分を発光させることがよくあります。 この場合よく行われる実装が視線ベクトルと法線の内積を使って云々する方法です。 シェーダで表現するとこんな感じになります。 Shader "Example" { Properties { _Color ("Color", Color) = (1,1,1,1) _MainTex ("Albedo (RGB)", 2D) = "white" {} _MetallicMap ("Metallic", 2D) = "white" {} _BumpMap("N

    【Unity】【シェーダ】ノーマルマップのZ値を利用した発光表現テクニック - LIGHT11
  • その5 0から学ぶ法線マップ

    ホーム < ゲームつくろー! < プログラマブルシェーダ編 シェーダ編 その5 0から学ぶ法線マップ ポリゴンの表面にはテクスチャが貼られる。これは3Dのゲームを作ろうと思う方はもちろんどなたでもご存知の事です。貼るという語意から、テクスチャには色が付いているんだろうなともイメージできます。しかし、DirectXの中では「色」というのは単なる数字です。特にシェーダの中に入ると、それは0.0~1.0の小数点になってしまいます。 テクスチャは何とも便利な物で、ポリゴン表面のある部分の色を示す事ができます。テクスチャの色は結局数値なのですから、これを別のもっと一般化すると「テクスチャはポリゴン表面のある部分の『値』を示す事ができる」となります。 ポリゴン表面の性質にも色々とありますが、色味以外の代表格と言うと「法線」です。ポリゴンの向きですね。これまで、法線は頂点単位でしか定義されませんでした。

  • 1