Як я можу отримати текстури на краю стін, як у Super Metroid та Aquaria?


57

Такі ігри, як Super Metroid та Aquaria, представляють місцевість з іншими облицювальними частинами, що мають скелі та інше, а глибше за ними (тобто під землею) є різні деталі або просто чорні.

введіть тут опис зображення

введіть тут опис зображення

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


1
Aquaria включає редактор рівнів, тож ви можете подивитися на це, щоб побачити, як саме вони будували активи.

2
Окрім перегляду редактора рівня Aquaria, основний метод, який використовується тут, - це мати два (або більше) шарів місцевості.
thedaian

Відповіді:


133

Metroid просто використовує плитку, нічого особливого там не відбувається.

Однак акваріум робить щось досить розумне. Якщо ви помітите, багато тих скель на ліжку повторюються кілька разів. Ось, наприклад, одна з гірських порід:

одна різновид повторної породи з кожним екземпляром обведена

Схоже, що щойно вони скинули спрайт по краях своєї місцевості. Це схоже на те, що зробив Metroid - це масивний арсенал крайових плиток, але якщо ви звернете увагу, ви можете помітити повторення плиток. Acquaria робить те саме, за винятком скельних спрайтів, а не на сітці.

Як це повторити

Це може бути не так, як вони це роблять, але це один із способів досягнення того ж кінцевого результату.

По-перше, придбайте собі приємну кучу скельних спрайтів:

деякі спрайти перді-скелі

Тепер є процес, який слід слідкувати, щоб ви знали, куди їх поставити.

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

Тада!

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

І інші особливості місцевості ...

Акваріум міг використати дуже подібний метод для скидання всіх грибів, коралів та інших особливостей на морському дні (включаючи гігантські скелясті структури, що утворюють фон). Гриби могли бути утворені так:

  1. Зберіть деякі точки через випадкові інтервали, а не фіксовані інтервали.
  2. Не просто зберігайте крапку. Зберігайте також нормальну частину краю, з якого ви вибрали крапку.
  3. Виберіть випадкове обертання в межах певного діапазону обертання нормалі. Наприклад, якщо нормальна величина вказується на 30 градусів, виберіть обертання в межах 20 градусів від цього (тобто між 10-50 градусами).
  4. Намалюйте свій гриб за обраним обертанням та довільною довжиною стебла.

Все інше, мабуть, є варіантом тих самих інструкцій: корал не сильно обертається, ці дві оболонки / камені, ймовірно, розміщуються лише в тому випадку, якщо нормальна місцевість спрямована приблизно вгору (тобто місцевість рівна).

Заключні ноти

Оскільки коментатор запитав: я створюю ці зображення в Adobe Photoshop (скоротився тут на 50% за чіткі лінії) за допомогою планшета Wacom Intuos3 (який дозволяє мені малювати вільно і природно, а також змінювати ширину моїх ліній тощо).


25
Гарна відповідь! Чудові супутні художні твори.
Тім Холт

2
Ух, найбільше малюнків та фотографій, які я коли-небудь бачив у відповіді.
Xeoncross

Найкраща відповідь. Чудова робота
Елліс

2
@Jonathan Hobbs: Дуже приємна художня робота. Ти все це намалював? Якщо так, то яку програму ви використовували? Мені дуже подобається результат і ефект, який він дає, намагаючись щось продемонструвати. Дякую.
Джессі Емонд

4
Я думаю, що "я повинен дістати один із цих планшетів, щоб я міг зробити таке мистецтво!" Тоді я думаю: "О так, я все одно не малюю, і планшет у цьому не допоможе"
MichaelHouse

3

Зробити це з полігонами було б досить просто, доки у вас є приємний повторювальний / плитковий візерунок, ви можете легко встановити свої моделі, щоб дублюватись по кривій, зовсім нічого складного.

Сподіваюся, що це допомагає.


Після цього ви ВИ МОЖЕТЕ зробити це і просто використовувати літаки для досягнення того ж результату (за умови, що вони просто на передньому плані, і гравець ніколи не торкається їх, таким чином поліконт в сцені буде меншим, оскільки можливо, що мати стільки Об'єкти, що дублюються (як у двох вище прикладах), будуть досить полі інтенсивними.
Dan_Tsukasa

Якщо ви використовуєте трикутну смужку для створення облямівки, вона буде менш поліінтенсивною (N / 2) +2, але ви не зможете отримати приємний ефект «перекриття» без створення конкретних плиток.
Джонатан Коннелл
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.