Объявление
public void SetFloat(string name, float value);public void SetFloat(int nameID, float value);
Параметры
nameID | Идентификатор имени свойства. Чтобы получить его, используйте Shader.PropertyToID. |
value | Плавающее значение для установки. |
name | Имя свойства, например. "_Glossiness". |
Описание
Устанавливает именованное значение с плавающей запятой.
При установке значений для материалов с помощью стандартного шейдера следует помнить, что вам может потребоваться использовать EnableKeyword, чтобы активировать функции шейдера, которые ранее не использовались. . Подробнее см. в разделе Доступ к материалам с помощью скрипта.
Смотрите так же: GetFloat, Materials, ShaderLab documentation, Shader.PropertyToID, Properties in Shader Programs.
using UnityEngine;
public class Example : MonoBehaviour
{
Renderer rend;
void Start()
{
rend = GetComponent<Renderer> ();
// Используем шейдер Specular на материале
rend.material.shader = Shader.Find("Specular");
}
void Update()
{
// Анимировать значение блеска
float shininess = Mathf.PingPong(Time.time, 1.0f);
rend.material.SetFloat("_Shininess", shininess);
}
}