Я делаю тестовую игру xna в качестве обучающего упражнения, и у меня есть небольшой вопрос об использовании 2d текстур. По сути, игра представляет собой сетку из различных «плиток», взятых из текстового файла карты. Я просто анализирую файл при инициализации уровня и создаю матрицу различных типов тайлов. Уровень по сути представляет собой ванну из настенной плитки и шипов. Итак, по сути, есть много настенных плиток и несколько плиток с шипами, а затем много пустых плиток. Тем не менее, существует четыре типа настенной плитки и текстуры шипов для покрытия разных направлений.
У меня вопрос: как лучше всего загрузить текстуры для каждой плитки? Могу ли я загружать индивидуальные текстуры для каждой плитки? т.е. когда я создаю плитку, передаю ей texture2d, которую я могу рисовать и загружать текстуру одновременно. Это кажется хорошим способом, но тогда я должен загружать каждую текстуру тайлов индивидуально, и это кажется расточительным.
Другой вариант, который я могу придумать, - это использовать статическую текстуру в структуре плитки, а затем просто загрузить эту текстуру как атлас плитки с различными стенами и шипами. Таким образом, я загружаю только одну текстуру, а затем при рисовании просто перемещаю прямоугольник в область соответствующей плитки внутри спрайта.
Я не уверен, какой из этих способов будет оптимальным с точки зрения производительности, или есть альтернативный подход?
Заранее спасибо