Материал не рендеринг на Android - PullRequest
0 голосов
/ 30 сентября 2019

в Unity3D Я хочу создать куб, используя шесть четырехугольников. Каждый из четырехугольников должен иметь различный материал.

Когда я создаю куб вручную и назначаю материалы квадам также вручную, все работает нормально, когда я запускаю его в редакторе, или использую Unity Remote 5, или когда я собираюпроект на устройстве.

Но когда я создаю куб программным способом, материал не отображается ни на устройстве Android, ни в редакторе. Это синий или белый (ни один из материальных цветов, которые я назначил). Но, по словам инспектора, для сгенерированных четырехугольников назначены правильные материалы.

Код, который создает куб и назначает материал, находится в методе Start (). Он также работал нормально, когда я создал новый пустой проект и программно создал только один квад с материалом.

Вот код, который я использую для создания квадов:


Quaternion parentRotation = parent.localRotation;
parent.localRotation = Quaternion.Euler(0, 0, 0);

var quad = GameObject.CreatePrimitive(PrimitiveType.Quad);
quad.GetComponent<Transform>().position = GetQuadPosition(parent, game.GameSize, x, y, parent.position.z);
quad.GetComponent<Transform>().localRotation = Quaternion.Euler(0, 0, 0);
quad.GetComponent<Transform>().localScale = GetQuadSize(parent, game.GameSize, x, y);
quad.GetComponent<Transform>().SetParent(parent);

MaterialType materialType = cubeTransform.materialType;
Material material = cubeMaterials.Single(q => q.materialType.Equals(materialType)).material;
quad.GetComponent<MeshRenderer>().material = material;

parent.localRotation = parentRotation;

Чтобы объяснить некоторые изкод, куб - это пустой игровой объект, состоящий из шести пустых игровых объектов, для которых вращение и положение установлены в том порядке, в каком они должны быть, и к каждой стороне добавляются квады (на одной стороне куба больше квадратов).

Код не отполирован ..

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