За допомогою якої технології Starcraft 2 відображає свої карти?


9

У мене є карта, яка процедурно генерується під час виконання, і зараз я досліджую способи надання цієї карти. Я зацікавився виглядом Starcraft 2 і хотів би порадити, які методи використовує для досягнення цього. По-друге, я хотів би побачити будь-які навчальні посібники, статті чи навіть приклади вихідного коду, якщо це можливо.

Є кілька головних речей, про які я хотів би отримати поради, але, будь ласка, також не соромтесь запропонувати щось інше, що могло б мені допомогти.

  1. Snappable Tilesets - Типова карта зоряних кораблів, як видається, складається з наборів моделей, які можна зв'язати разом, щоб створити скелі, скати та інші підняті місцевості. Які методи вони використовують, щоб вони виглядали так природно? Що я маю на увазі, це дуже важко помітити повторення.

  2. Текстури місцевості - Текстури рельєфу настільки різноманітні і рівномірні (динамічний Зерг). Які методи використовуються для цього?

Дякую.


Що стосується №2, то досліджуйте "текстурування бризок".
Джордж Дакетт

Відповіді:


23

Я думаю, що частиною цього може бути просто те, що Blizzard має дивовижну кількість виконавців текстур. Але давайте перефразуємо питання трохи:

У мене обмежений бюджет і хочу зробити стратегічну гру в реальному часі без очевидних плиткових текстур. Як я можу це досягти?

Хороше питання! Ось кілька великих інструментів, які я використовував:

1) Досить великий набір змінних плиток . Скажімо, ви збираєтеся з розміром текстури 64х64 у вашій сітці: зробіть вісім текстур 64х64, будь-яка з яких може плитка з будь-якими іншими.

2) Наклейки або мегатекстурування . Візьміть свою неодноразову текстуру та невелику кількість текстур, що накладаються "бруд" чи "бруд" чи "потертості". Нанесіть кілька таких накладок на ваші текстури. Вони можуть бути відображені в режимі реального часу, і в такому випадку вони наліповані на ярликах, або запечені до гігантської текстури, і в цьому випадку це називається мегатекстурінг. В будь-якому випадку ви, ймовірно, можете зробити це напів випадковим чином, і ви отримаєте велику кількість варіантів лише за допомогою декількох застосованих накладок.

3) плитки цикади . Перевірте це, щоб отримати докладнішу інформацію про те, як це працює. Підсумовуючи це, це спосіб взяти невелику кількість частково-прозорих очевидно-плиткових фонів і використовувати його для створення набагато менш очевидного плиткового фону.

4) Бризки текстури . Я зберегла це останнє, оскільки справа не в тому, щоб уникнути плитки на одній фактурі, це насправді про безпроблемне поєднання декількох текстур. Однак, якщо вам вдасться виділити кілька додаткових текстур у своєму бюджеті, це може бути критичним інструментом - адже я б сказав, якщо ви не використовуєте це, ви, ймовірно, робите щось не так. Це не допоможе для великих очевидно викладених плиток одного типу текстури, але саме це ви використаєте для того, щоб різні текстури виглядали добре один біля одного.


Для зацікавлених Starcraft 1 використовує №1 у цьому списку, а Starcraft 2 використовує №4. В обох випадках це стосується базової місцевості. Що стосується "каракулей" у SC1, вони були №2 (відмітні знаки, а не мегатекстури), а в SC2 - всі 3D моделі. - Окрім того, що карти SC2 виглядають такими чудовими, це те, що в більшості локацій є дві текстури, нанесені один на одного в різних ступенях, і це виглядає так, як плитка Cicada. (про яку я до цього часу не знав і планую використовувати.)
DampeS8N

@ DampeS8N: Насправді SC1 не робить №1 самостійно. Натомість, у них є невелика палітра плиток, які плитку між собою, а також певні плитки, які плитку лише певними іншими плитками. У редакторі карт є таблиця з плитками з чим, тому коли ви розміщуєте плитки, які не відповідають плитці, що знаходиться поруч, він проходить через свої таблиці і замінює ці плитки на те, що робить плитка на те, що ви розмістили. Рекурсивно.
Нікол Болас

@NicolBolas Технічно вірно, але філософія, що лежить в основі, полягає у взаємозамінних плитках між собою. Так само ми з друзями бачили, скільки перегортань плитки ми можемо викликати в редакторі SC1 як ланцюгову реакцію.
DampeS8N
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.