首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Lerp RenderSettings Skybox

Lerp RenderSettings Skybox
EN

Stack Overflow用户
提问于 2019-02-10 20:06:04
回答 2查看 452关注 0票数 0

我如何才能缓慢而流畅地更换天箱。在我的代码中,它将检查振幅是否小于0.7。它现在可以工作了,但当我测试它时,它会突然改变,我想慢慢地改变它。有什么想法吗?感谢你们的回答伙计们。非常感谢!

代码语言:javascript
复制
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class DayNight : MonoBehaviour {

    public Light light;

    public Material nightSkyBox;

    public Material daySkyBox;

    public float duration;

    void Update() {

        float phi = Time.time / duration * 2 * Mathf.PI;

        float amplitude = Mathf.Cos (phi) * 1.0f + 1.0f;

        light.intensity = amplitude;

        if (amplitude <= 0.7f) {
            RenderSettings.skybox = nightSkyBox;
            light.color = new Color32 (68, 170, 255, 255);
        } else {
            RenderSettings.skybox = daySkyBox;
            light.color = new Color32 (255, 181, 99, 255);
        }
    }
}
EN

回答 2

Stack Overflow用户

发布于 2019-02-10 20:11:24

对于这个用例,我建议你使用unity内置动画系统。只需为你的相机创建一个动画师,并通过黑夜和白天的关键帧改变天框

票数 0
EN

Stack Overflow用户

发布于 2019-05-23 23:27:18

我现在不能测试,但你应该可以做这样的事情。针对不同的计时调整浮动参数。

RenderSettings.skybox.Lerp(daySkyBox,nightSkyBox,1f);

你可能得再回一次白天的时间

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54616193

复制
相关文章

相似问题

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