AssetBundles с шейдерами, которые содержат #include to cg / hlsl - PullRequest
0 голосов
/ 05 января 2019

У меня есть шейдер, который содержит #include для других сценариев cg / hlsl. Если я положу этот шейдер в AssetBundle, как я буду обрабатывать сценарии cg / hlsl?

Они больше не нужны, потому что они скомпилированы в шейдер во время процесса сборки AssetBundle? Версия Unity 5.6.6f2

Или я должен также поместить сценарии cg / hlsl в AssetBundle? Если это так, как мне загрузить их во время выполнения, чтобы шейдер их нашел?

Кто-то предложил мне включить их, но я бы хотел избежать этого, если это возможно.

1 Ответ

0 голосов
/ 07 января 2019

Шейдеры не скомпилированы в пакет активов, они разбиты на блоки как любой другой скрипт и поэтому не могут быть скомпилированы в пакет.

В настройках проекта> Графика> Настройки встроенного шейдера есть раздел "всегда включенные шейдеры". Если вы добавите туда шейдеры, они будут включены в вашу сборку. Таким образом, до тех пор, пока ваш ресурсный пакет имеет ссылку на шейдер при компиляции пакета, у него не должно возникнуть проблем с использованием правильного шейдера после создания объекта.

Вставка вашего шейдера вообще не нужна.

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