У меня есть карта, которая процедурно генерируется во время выполнения, и в настоящее время я изучаю способы рендеринга этой карты. Я заинтересовался внешним видом Starcraft 2 и хотел бы посоветовать, какие методы он использует для его достижения. Во-вторых, я хотел бы видеть любые учебники, статьи или даже примеры исходного кода, если это возможно.
Есть несколько основных вещей, о которых я хотел бы получить совет, но, пожалуйста, не стесняйтесь предлагать что-нибудь еще, что может мне помочь.
Snappable Tilesets - типичная карта звездного корабля, кажется, состоит из набора плиток моделей, которые можно соединить вместе, чтобы создать скалы, скаты и другой возвышенный ландшафт. Какие методы они используют, чтобы заставить их выглядеть так естественно? Я имею в виду, что очень трудно обнаружить повторение.
Текстуры ландшафта - Текстуры ландшафта настолько разнообразны и даже динамичны (ползучесть зергов). Какие методы используются для этого?
Спасибо.
источник
Ответы:
Я думаю, что отчасти это может быть из-за того, что у Blizzard есть потрясающее количество художников текстур. Но давайте перефразируем вопрос немного:
Хороший вопрос! Вот несколько больших инструментов, которые я бы использовал:
1) Достаточно большой набор сменных плиток . Допустим, вы собираетесь использовать текстуру размером 64x64 на своей сетке: создайте восемь текстур 64x64, каждая из которых может совмещаться с любыми другими, и у вас получится симпатичная игра на основе плиток с большим количеством вариаций!
2) Декали или мегатекстурирование . Возьмите свою повторяющуюся текстуру и небольшое количество наложенных текстур «пятно», «грязь» или «потертость». Брызги несколько таких оверлеев на ваших текстурах. Они могут быть отображены в реальном времени, в этом случае они являются декали, или запекаться в огромную текстуру, и в этом случае это называется мегатекстурированием. В любом случае вы, вероятно, можете сделать это почти случайно, и у вас будет много вариаций с несколькими примененными наложениями.
3) Плитка цикады . Проверьте это для более подробной информации о том, как это работает. Таким образом, это способ взять небольшое количество частично прозрачных фонов с явно мозаичным рисунком и использовать его для создания гораздо менее очевидного фонового рисунка.
4) Брызги текстуры . Я сохранил это последнее, потому что на самом деле речь идет не о том, чтобы избежать наложения на одну текстуру, а об объединении нескольких текстур. Однако, если вам удастся извлечь несколько дополнительных текстур из своего бюджета, это может быть критически важным инструментом - на самом деле, я бы сказал, что если вы не используете это, вы, вероятно, делаете что-то не так. Это не поможет с большими явно плиточными секциями одного типа текстуры, но это то, что вы будете использовать, чтобы ваши текстуры выглядели хорошо рядом друг с другом.
источник