fix(heatmap): 低温段改为蓝色噪点并保留发热色带

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-07-20 01:20:12 +08:00
co-authored by Cursor
parent 9403bd9623
commit 41ca1927a0
3 changed files with 19 additions and 9 deletions
@@ -22,8 +22,8 @@ public class HeatMapController : MonoBehaviour
public Transform imageToRotate; // 需要旋转的Image
[SerializeField, Min(0f)] private float fanStopDuration = 0.15f;
[Header("低温背景")]
[SerializeField] private Color coldBaseColor = new Color(0.015f, 0.075f, 0.16f, 1f);
[SerializeField] private Color coldHighlightColor = new Color(0.02f, 0.27f, 0.48f, 1f);
[SerializeField] private Color coldBaseColor = new Color(0.005f, 0.02f, 0.55f, 1f);
[SerializeField] private Color coldHighlightColor = new Color(0f, 0.3f, 1f, 1f);
[SerializeField, Min(0.01f)] private float coldNoiseScale = 1.8f;
[SerializeField, Range(0f, 1f)] private float coldNoiseStrength = 0.45f;
public Vector3 inPos; // Heatmap进入位置
@@ -244,7 +244,7 @@ public class HeatMapController : MonoBehaviour
public void SetDataToMaterial()
{
// 逻辑温度 0~2 → shader 侧发热强度;各段端点连续,避免跨档跳变。
// t=0 冷态压低,接近「看不见」;t=1/2 保持原有发热观感
// 保持原有温度映射,冷色替换只由 shader 处理
if (tempture <= 1f)
{
float t = Mathf.Clamp01(tempture);
@@ -256,7 +256,7 @@ public class HeatMapController : MonoBehaviour
{
float t = Mathf.Clamp01(tempture - 1f);
uftempture = Mathf.Lerp(2.8f, 3.2f, t);
modulesTempture = Mathf.Lerp(1.6f, 2.3f, t); // 原 1.8 起点与上一段不连续
modulesTempture = Mathf.Lerp(1.6f, 2.3f, t);
backtemture = Mathf.Lerp(2.25f, 3.4f, t);
}