private void LateUpdate() { if (canPlayFireEffect)//发射 { ColdDownTime = 0; ShotNum++; canPlayFireEffect = false; m_Audio.PlayOneShot(audioClips[Random.Range(1, audioClips.Length)]);//播放射出音效 Arrow_Anim.GetComponent <Renderer>().enabled = false; Transform newArrow = Instantiate(Arrow_Prefab, Arrow_Anim.transform.position, this.transform.rotation); //newArrow.localScale = this.transform.localScale + Vector3.one * (Force - Force_Min) / (Force_Max - Force_Min); newArrow.GetComponent <Arrow>().m_Rigidbody.AddForce(this.transform.forward * Force); newArrow.name += ShotNum + "_" + Force.ToString("F2"); Force = Force_Min; BoresightTime = 1f; } if (Holding) { if (!m_Audio.isPlaying) { m_Audio.PlayOneShot(audioClips[0]);//播放拉弦音效 } Arrow_Anim.GetComponent <Renderer>().enabled = true; } if (canShowBoresight) { boresight.material.color = ColorAdjust.ColorAlphaChange(boresight.material.color, ValueAdjust.Lerp(boresight.material.color.a, 0.6f, Time.deltaTime, 5f)); } else { boresight.material.color = ColorAdjust.ColorAlphaChange(boresight.material.color, ValueAdjust.Lerp(boresight.material.color.a, 0f, Time.deltaTime, 2f)); } }
void Update() { if (SwitchColorTime > 0 && renderers.Count > 0) { time += direction * Time.deltaTime; if (time <= 0)//(renderers[0].material.color == color) { color2 = ColorAdjust.ConvertHsvToRgb(Random.Range(0, 360), Random.Range(0, 1f), 1); direction = 1; } else if (time >= SwitchColorTime)//(renderers[0].material.color == color2) { color = ColorAdjust.ConvertHsvToRgb(Random.Range(0, 360), Random.Range(0, 1f), 1); direction = -1; } else { Color tempColor = Color.Lerp(color, color2, time / SwitchColorTime); for (int i = 0; i < renderers.Count; i++) { if (renderers[i]) { renderers[i].material.SetColor(ColorNameInShader, tempColor); } } } } }
public void TestFullRange() { var filter = new ColorAdjust { LimitedRange = false }; Assert.AreEqual(0, filter.GetLowColor(8)); Assert.AreEqual(0, filter.GetLowColor(10)); foreach (var plane in new[] { YUVPlanes.PLANAR_Y, YUVPlanes.PLANAR_U, YUVPlanes.PLANAR_V }) { Assert.AreEqual(255, filter.GetHighColor(8, plane)); Assert.AreEqual(1023, filter.GetHighColor(10, plane)); } }
public static void DrawPathGizmo(CinemachineSmoothPathForCarDrift path, Color pathColor, bool isActive) { // Draw the path Color colorOld = Gizmos.color; Gizmos.color = pathColor; float step = 1f / path.m_Resolution; float halfWidth = path.EvaluateWidth(path.MinPos);//path.m_Appearance.width * 0.5f; Vector3 lastPos = path.EvaluatePosition(path.MinPos); Vector3 lastW = (path.EvaluateOrientation(path.MinPos) * Vector3.right) * halfWidth; float tEnd = path.MaxPos + step / 2; for (float t = path.MinPos + step; t <= tEnd; t += step) { Vector3 p = path.EvaluatePosition(t); halfWidth = path.EvaluateWidth(t); if (!isActive || halfWidth == 0) { Gizmos.DrawLine(p, lastPos); } else { Quaternion q = path.EvaluateOrientation(t); Vector3 w = (q * Vector3.right) * halfWidth; Vector3 w2 = w * 1.2f; Vector3 p0 = p - w2; Vector3 p1 = p + w2; Gizmos.color = ColorAdjust.ColorValueChange(pathColor, 0.5f); Gizmos.DrawLine(p0, p1); Gizmos.color = pathColor; Gizmos.DrawLine(lastPos - lastW, p - w); Gizmos.DrawLine(lastPos + lastW, p + w); #if false // Show the normals, for debugging Gizmos.color = Color.red; Vector3 y = (q * Vector3.up) * halfWidth; Gizmos.DrawLine(p, p + y); Gizmos.color = pathColor; #endif lastW = w; } lastPos = p; } Gizmos.color = colorOld; }
void Start() { color = ColorAdjust.ConvertHsvToRgb(Random.Range(0, 360), Random.Range(0, 1f), 1); if (renderers.Count < 1) { renderers.Add(this.GetComponent <Renderer>()); } if (renderers.Count > 0) { for (int i = 0; i < renderers.Count; i++) { if (renderers[i]) { renderers[i].material.SetColor(ColorNameInShader, color); } } } }
public void TestLimitedRange() { var filter = new ColorAdjust { LimitedRange = true }; Assert.AreEqual(16, filter.GetLowColor(8)); Assert.AreEqual(64, filter.GetLowColor(10)); Assert.AreEqual(235, filter.GetHighColor(8, YUVPlanes.PLANAR_Y)); Assert.AreEqual(940, filter.GetHighColor(10, YUVPlanes.PLANAR_Y)); foreach (var plane in new[] { YUVPlanes.PLANAR_U, YUVPlanes.PLANAR_V }) { Assert.AreEqual(240, filter.GetHighColor(8, plane)); Assert.AreEqual(960, filter.GetHighColor(10, plane)); } }
void Start() { Arrow_Anim.GetComponent <Renderer>().enabled = false; boresight.material.color = ColorAdjust.ColorAlphaChange(boresight.material.color, 0); }