版本:Unity 6 (6000.0)
语言English
  • C#

Material.Lerp

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实阅读了用户提出的每个建议更改,并在适用的情况下进行更新。

关闭

提交失败

由于某种原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

切换到手册

声明

public void Lerp(Material start, Material end, float t);

描述

在两个材质之间插值属性。

根据 t,使材质的所有颜色和浮点值从 start 插值到 end
t 为 0 时,所有值都取自 start
t 为 1 时,所有值都取自 end

大多数情况下,您希望插值之间的材质相同(使用相同的着色器和纹理),除了颜色和浮点数。然后,您可以使用 Lerp 在它们之间混合。

其他资源:材质

using UnityEngine;

public class Example : MonoBehaviour { // Blends between two materials

Material material1; Material material2; float duration = 2.0f; Renderer rend;

void Start() { rend = GetComponent<Renderer> ();

// At start, use the first material rend.material = material1; }

void Update() { // ping-pong between the materials over the duration float lerp = Mathf.PingPong(Time.time, duration) / duration; rend.material.Lerp(material1, material2, lerp); } }