У меня есть массив объектов Sprite в Unity. Их размер зависит от загруженного изображения. Я хочу объединить их бок о бок, как плиточную карту в одно изображение. Я хочу, чтобы они были макетом, как будто вы формируете линию изображений один за другим. (обратите внимание: НЕ один на другой) Как я могу это сделать?Объединить массив объектов Sprite в One Sprite - Unity
Причина, по которой я совмещаю (только для тех, кто хочет знать), заключается в том, что я использую коллайдер polygon2D. Поскольку есть некоторые странные поведения, происходящие, когда я использую несколько коллайдеров бок о бок, я решил просто объединить изображения, прежде чем добавлять один большой коллайдер многоугольника. Обратите внимание, что все это происходит во время выполнения. Я не могу просто создать большое изображение и загрузить его, потому что порядок изображений определяется только во время выполнения.
Надеюсь получить некоторую помощь. Благодарю.
Вы пробовали комбинировать только коллайдеры? это была бы моя первая попытка, поскольку они кажутся проблемой. Если спрайты довольно просты, просто создайте пути вручную, если не прочитайте пути от исходных polygonColliders и добавьте их все в новый или существующий и удалите остальные. – Tom
@ То, что я пробовал, но не смог найти способ комбинировать коллайдеры. Я написал код, который получает все точки, тогда я удаляю дублированные точки, и я не получил результат, который хотел. Когда я посмотрел на него, я понял, что мне нужно найти способ определения допустимых путей. Я должен игнорировать путь, который закрывает каждое изображение. Но как мне это сделать, когда мои изображения различаются по форме и размерам (состоит из множества точек), вы могли бы указать мне в правильном направлении/лучше, но помогите мне с этим. Благодарю. – cessmestreet
в зависимости от количества путей, которые вы получаете от всех коллайдеров, вы можете просто скопировать их без изменения: сориентируйте пути всех коллайдеров вместе, затем установите путьCount вашего нового коллайдера на это число, затем пройдите по всем путям и установите их в новый коллайдер с SetPath(). Мое предположение было бы <50-100 путей все еще хорошо. Я столкнулся с проблемами, когда алгоритм создал 1000+ путей, так как навсегда потребовалось бы объединение сетки с путями. – Tom