首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用UI滑块控制灯光强度

使用UI滑块控制灯光强度
EN

Stack Overflow用户
提问于 2018-11-02 17:19:36
回答 2查看 1.3K关注 0票数 0

我正在开发Unity中的2D游戏,我想知道如何使用我的游戏选项菜单中的滑块来管理亮度。我想知道解决这个问题的步骤是什么。

EN

回答 2

Stack Overflow用户

发布于 2018-11-02 23:16:46

订阅滑块的onValueChanged事件,以便在滑块值更改时收到通知。发生这种情况时,将滑块的值指定给灯光的强度值:Light.intensity = Slider.value

就这样。

代码语言:javascript
复制
//Add your slider from the Editor
public Slider sliderRef;
//Add your light from the Editor
public Light lightRef;

void OnEnable()
{
    //Subscribe to the Slider Click event
    sliderRef.onValueChanged.AddListener(sliderCallBack);
}

//Will be called when Slider changes
void sliderCallBack(float value)
{
    Debug.Log("Slider Value Changed: " + value);
    lightRef.intensity = sliderRef.value;
}

void OnDisable()
{
    //Un-Subscribe To Slider Event
    sliderRef.onValueChanged.RemoveAllListeners();
}
票数 2
EN

Stack Overflow用户

发布于 2018-11-02 18:46:09

我猜有几个选择取决于你希望实现的目标;但这些都会出现在你的脑海中:

  1. 在相机前使用半透明的黑色四边形,并简单地更改材质颜色,这可能是最简单的。缺点是,由于整个屏幕上的alpha会降低性能,
  2. 使用后期处理效果https://docs.unity3d.com/Manual/PostProcessingOverview.html。缺点,如果你使用的是自定义着色器,那么你可以有一个定义亮度的全局变量来控制手机的本机亮度,这可能会有点棘手,并且可能不是你想要的效果
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53115738

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档