
代码:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using UnityEngine.UI;
#if UNITY_EDITOR
using UnityEditor;
#endif
[DisallowMultipleComponent]
public class UIGray : MonoBehaviour
{
private bool _isGray = false;
public bool isGray
{
get{
return _isGray;}
set
{
if(_isGray != value)
{
_isGray = value;
SetGray(isGray);
}
}
}
static private Material _defaultGrayMaterial;
static private Material grayMaterial
{
get
{
if(_defaultGrayMaterial == null)
{
_defaultGrayMaterial = new Material(Shader.Find("UI/Gray"));
}
return _defaultGrayMaterial;
}
}
/// <summary>
/// 置灰,遍历节点所有图片设置灰色材质。
/// </summary>
Unity3D实现物体灰度效果

本文介绍了如何在Unity3D中使用自定义Shader `UIGray.shader`,实现游戏场景中的物体显示为灰度效果,从而达到特殊的视觉呈现。
最低0.47元/天 解锁文章
2095

被折叠的 条评论
为什么被折叠?



