Unity入門-8 マテリアルなどの設定や応用

レイヤーで不要な表示を消す

  1. マップビュー用に作成したマテリアルが水面に反射してしまう
  2. これはCameraのレイヤーに関わりなく,(WaterProDaytimeを出していれば)WaterProDaytime全てのレイヤーを反射しているからである
  3. そこでWaterProDaytimeを選択し,Reflect Layersの中からmarkerのチェックを外すと水面にも表示されなくなりますrefrect

マテリアルその3 NormalMapをアサインする

  1. マテリアルにはノーマルマップ(法線マップ)をアサインできる
  2. GameObject>3D Object>Cube で立方体を作成するmatnormal
  3. Asset内に空のマテリアルを作成し(Asset右クリック>Create Material),分かりやすい名前に変更する
  4. 作成したマテリアルを選択し,InspectorのAlbedoの左にある○をクリック
  5. Select Texture画面が開くので,上段の検索フィールドにmudと入力すると,MudAlbedoSpeculraTextureが表示されるので,選択をする
  6. 次にNormal Mapの左の○をクリックし,同様に検索語にmudを入力し,MudRockyNormalが表示されるのでこれを選択する
    normal2
  7. 作成されたマテリアルをさきほど作成したCubeにアサインするnormal3
  8. 6ポリゴンしかないCubeが一見して超ハイポリゴンに見える
  9. 見た目の形状が変わっているため,光源が変化すると影も変化するnormalshado

Normal Mapとは

  1. 計算資源に限りのあるスマートホンや携帯ゲーム機といったデバイスには,距離などによってローポリ/ハイポリのモデルを切り替えるLOD( Level of Detail)を利用したり,Fogや視程を下げるなどして狭い範囲だけ描画するなどしている
  2. Normal Mapはポリゴンの表面にある法線を画像で指定する方法で,少ないポリゴンでも見た目を細かく見せることができるため,皮膚や服のシワ,壁や地面といった部分に使用される
  3. このNormal Mapは自分でも作成でき,画像などを加工してもそれなりなものを作成できるため,出かけた際は地面や壁や屋根の写真を撮影することをお勧めする

つぎへ