【发布时间】:2017-05-03 06:39:23
【问题描述】:
我不太明白这段代码,所以我很难修改它。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SunScript : MonoBehaviour {
public float duration = 1.0F;
public Light lt;
void Start() {
lt = GetComponent<Light>();
}
void Update() {
float phi = Time.time / duration * 0.1f * Mathf.PI;
float amplitude = Mathf.Cos(phi) * 0.5F + 0.5F;
lt.intensity = amplitude;
}
}
这会在一个循环中上下移动光的强度。但是,我想让它在最亮和最暗的状态下保持一段时间,然后再开始向另一个方向移动。我该怎么做?
【问题讨论】:
-
你不能只增加持续时间变量吗?
-
找到一些在线数学绘图仪,例如this,并使用 Time.time 作为 x 参数输入您的数学方程。然后根据需要修改方程式。
-
@Louis-Roch Tessier 我只想增加最亮和最暗的部分,而不是介于两者之间的时间。持续时间控制整个周期。
标签: c# unity3d unity5 lighting light