在unity人物模型中,一般会有一个表示主身体的模型,并且在这个物体上还会有Skinned Mesh Render
组件
那我们只需要在代码中,获取Skinned Mesh Render
组件,并给其中Material
的Color
赋值即可,代码如下
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerHp : MonoBehaviour
{
//皮肤渲染
private SkinnedMeshRenderer _mSkinnedMeshRenderer;
// Start is called before the first frame update
void Start()
{
//获取组件
_mSkinnedMeshRenderer = GameObject.Find("PlayerBody").GetComponent<SkinnedMeshRenderer>();
}
// Update is called once per frame
void Update()
{
//改变颜色,这里使用了Color.Lerp()一个颜色的渐变
_mSkinnedMeshRenderer.material.color =
Color.Lerp(_mSkinnedMeshRenderer.material.color, Color.white, Time.deltaTime);
}
}