45 lines
1.1 KiB
C#
45 lines
1.1 KiB
C#
|
|
using System.Collections;
|
||
|
|
using System.Collections.Generic;
|
||
|
|
using Convention;
|
||
|
|
using UnityEngine;
|
||
|
|
|
||
|
|
namespace Demo.Game
|
||
|
|
{
|
||
|
|
public abstract class BaseOnMaterialUpdatement : Updatement<float>
|
||
|
|
{
|
||
|
|
public abstract string TargetFieldName { get; }
|
||
|
|
|
||
|
|
protected override float Lerp(float begin, float end, float t)
|
||
|
|
{
|
||
|
|
return Mathf.Lerp(begin, end, t);
|
||
|
|
}
|
||
|
|
|
||
|
|
[Content] public MeshRenderer TargetMeshRenderer;
|
||
|
|
|
||
|
|
protected override void UpdateData(float data)
|
||
|
|
{
|
||
|
|
if (TargetMeshRenderer != null)
|
||
|
|
TargetMeshRenderer.material.SetFloat(TargetFieldName, data);
|
||
|
|
}
|
||
|
|
|
||
|
|
/// <summary>
|
||
|
|
/// 绑定到允许的渲染器
|
||
|
|
/// </summary>
|
||
|
|
/// <param name="path">脚本位置</param>
|
||
|
|
[ScriptableCall(@"
|
||
|
|
<summary>
|
||
|
|
绑定到允许的渲染器
|
||
|
|
</summary>
|
||
|
|
<param name=""path"">脚本位置</param>
|
||
|
|
")]
|
||
|
|
public void Load(string path)
|
||
|
|
{
|
||
|
|
var so = FindWithPath(path, false);
|
||
|
|
if (so != null)
|
||
|
|
{
|
||
|
|
TargetMeshRenderer = so.GetComponent<MeshRenderer>();
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|