Как настроить текстуру материала шейдерного графика через скрипт с помощью URP - PullRequest
0 голосов
/ 22 марта 2020

Я пытаюсь установить текстуру материала графика шейдера и мне не повезло. После некоторых уроков и поиска в Google я не могу заставить его работать.

До сих пор я установил свою сцену с плоскостью, которую я сгенерировал с помощью кода, и предварительно сконструировал и применил материал к обе эти. Затем я создал скрипт для установки текстуры MeshRenderer на «_MainTex», как я несколько раз упоминал при поиске в Google. Я также установил для свойства текстуры материала значение "_MainTex".

Я также пробовал использовать имя ссылки, но это также не сработало.

Так как настроить текстуру шейдера? Графический материал с универсальным конвейером рендеринга через код?

Две плоскости в игре:

The two planes

Инспектор готовых плоскостей:

The prebuilt plane's inspector

График шейдеров:

The shader graph

Сценарий:

void Start()
{
    GetComponent<MeshRenderer>().material.SetTexture("_MainTex", new TextureGenerator().GenerateNoiseTexture(256, 256));
}

1 Ответ

1 голос
/ 14 апреля 2020

Вам необходимо заполнить раздел «Справочник» графика шейдера. Вместо Texture2D_234E865 он должен читать там "_MainTex". Проверьте сохраненный актив, нажав на шейдер и заглянув в инспектор. Под Свойствами это должно перечислить _MainTex. Затем вы можете использовать код SetTexture или просто вызвать material.mainTexture , что делает то же самое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...