facebook twitter hatena line email

Unity/Shader/Lod

提供: 初心者エンジニアの簡易メモ
移動: 案内検索

LOD公式

https://docs.unity3d.com/ja/2018.4/Manual/SL-ShaderLOD.html

Lodのサンプル

Custom_Lod.shader

Shader "Custom/Lod" {
	SubShader {
		LOD 200
		Pass{
			// 黒
			Color(0,0,0,1)
		}
	}
	SubShader {
		LOD 100
		Pass{
			// 青
			Color(0,0,1,1)
		}
	}
	SubShader {
		Pass{
			// 赤
			Color(1,0,0,1)
		}
	}
}

csに貼り付け

using UnityEngine;

public class LodScene : MonoBehaviour
{
    [SerializeField] MeshRenderer cubeMeshRenderer;
    int lod = 0;
    void Update()
    {
        // グラデーションにはならない。その値になったときに、設定した色になる
        lod++;
        cubeMeshRenderer.material.shader.maximumLOD = lod;
    }
}

参考:https://techblog.gmo-ap.jp/2016/12/27/unity%E3%81%AE%E3%82%B7%E3%82%A7%E3%83%BC%E3%83%80%E3%83%BClod%E3%82%92%E8%AA%BF%E3%81%B9%E3%81%A6%E3%81%BF%E3%81%9F/