Version: 5.3 (switch to 5.4b)
ЯзыкEnglish
  • C#
  • JS

Язык программирования

Выберите подходящий для вас язык программирования. Все примеры кода будут представлены на выбранном языке.

Shader.Find

Предложить изменения

Успех!

Благодарим вас за то, что вы помогаете нам улучшить качество документации по Unity. Однако, мы не можем принять любой перевод. Мы проверяем каждый предложенный вами вариант перевода и принимаем его только если он соответствует оригиналу.

Закрыть

Ошибка внесения изменений

По определённым причинам предложенный вами перевод не может быть принят. Пожалуйста <a>попробуйте снова</a> через пару минут. И выражаем вам свою благодарность за то, что вы уделяете время, чтобы улучшить документацию по Unity.

Закрыть

Отменить

Руководство
public static function Find(name: string): Shader;
public static Shader Find(string name);

Параметры

Описание

Находит шейдер с данным именем name.

Shader.Find используется, когда нужно получить доступ к шейдеру без прямой ссылки на него в компоненте. name — имя шейдера, которое видно в меню выбора шейдера в любом материале.

Note that a shader might be not included into the player build if nothing references it! In that case, Shader.Find will work only in the editor, and will result in pink "missing shader" materials in the player build. Because of that, it is advisable to use shader references instead of finding them by name. To make sure a shader is included into the game build, do either of: 1) reference it from some of the materials used in your scene, 2) add it under "Always Included Shaders" list in ProjectSettings/Graphics or 3) put shader or something that references it (e.g. a Material) into a "Resources" folder.

See Also: класс Material.

// Create a material from code
function Start () {
	// Create a material with transparent diffuse shader
	var material = new Material(Shader.Find ("Transparent/Diffuse"));
	material.color = Color.green;
	
	// assign the material to the renderer
	GetComponent.<Renderer>().material = material;
}
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { void Start() { Material material = new Material(Shader.Find("Transparent/Diffuse")); material.color = Color.green; GetComponent<Renderer>().material = material; } }