Я использую масштабированные плоскости для создания геометрии для моего уровня. Эти плоскости имеют общий материал, но из-за масштабирования текстура на плоскости также растягивается. Перед переключением на облегченный профиль рендеринга я использовал этот код для смягчения этой проблемы:
var render = GetComponent<MeshRenderer>();
var scale = new Vector2(transform.localScale.x, transform.localScale.z);
render.material.SetTextureScale("_MainTex", scale);
render.material.SetTextureScale("_BumpMap", scale);
, который создал экземпляр материала и изменил свойство Tiling в соответствии с локальным масштабом объекта.
Тем не менее, после перехода на облегченный RP код не масштабирует текстуру. При регистрации render.material.mainTextureScale
в консоли отладки отображаются мои обновленные значения, но когда я проверяю GameObject, к которому он присоединен, свойство Tiling материала не изменилось.
Материал использует шейдер Lightweight Render Profile/Lit
.
Есть ли способ исправить это в моем коде C #? Если нет, есть ли способ сделать это без изменения способа, которым я делаю уровни?