В настоящее время я создаю сложную систему инвентаризации, новая часть этой системы требует от меня настройки размеров кнопки. Кнопки получают изображение из файла json, и я, в свою очередь, пытаюсь применить размер imge к прямоугольному преобразованию кнопки. Тем не менее, мои кнопки используют этот проект: https://github.com/quoxel/VariableGridLayoutGroup, который позволяет создать сетку, столбцы и строки которой имеют переменные размеры, динамически изменяя размер, чтобы соответствовать наибольшему контенту в этой строке или столбце. Однако этот сценарий не позволяет мне напрямую изменять прямоугольное преобразование кнопок, когда они являются дочерними объектами игрового объекта, к которому присоединен компонент VariableGridLayoutGroup. Из-за этого я настраивал размер, изменяя последний параметр этого метода, когда я создаю спрайт (float pixPerUnit в этом примере - 100f)
GameObj.GetComponent<Image>().sprite = Sprite.Create(myTexture, new Rect(0.0f, 0.0f, myTexture.width, myTexture.height), new Vector2(0f, 0f), 100f);
Что не происходит, тем не менее, это использование myTexture.width, myTexture.height
, поскольку он переопределяется группой VariableGridLayoutGroup. Несмотря на то, что изменение pixPerUnit действительно помогает изменить размер кнопки, для меня это не очень надежно или полезно, так как с ним не очень удобно работать или с ним легко работать. если у кого-то есть идеи о том, как это можно перезаписать или просто лучше отрегулировать размер этой кнопки, я был бы очень благодарен!