Місцевість на основі висоти з дорогою


12

Який найкращий спосіб реалізувати детальну деталь, як-от дорога, на місцевості на основі висоти?

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

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

Відповіді:


14

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

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


1
Чи можливо використовувати зображення HDRI, тому цифри з поплавком можна використовувати для зберігання більш точної інформації про висоту?
Куазі Ірфан

1
Зображення HDRI - це не формат файлу, а концепція, але так, ви можете використовувати конкретні формати файлів, щоб досягти більшої точності. Це здебільшого залежатиме від вашої апаратури / програмного забезпечення, але є плаваюче зображення RG, яке ви можете зберігати на 32 або 64 бітах. Але який би не був формат, якщо ви використовуєте більше біт на канал, ви завжди можете перетворити значення int в число з плаваючою точкою на кшталт цього: f = (v / 256.0), де f - ваш
плавець

Чи корисно зберігати всі статичні об’єкти карти на (висоті) карті? як рослинність, листя, будинок? або вказівники, де буде розміщений інший об’єкт? чи якийсь інший спосіб існує?
Куазі Ірфан

Я б не зберігав точне місце розташування, але, можливо, просто інформацію про щільність, а потім генерував би дані (рослинність, будинок тощо ...) з інформації про щільність. Але найкращий спосіб - розмістити ці об’єкти вручну та зберегти їх, використовуючи файл двійкових даних або файл опису xml
XGouchet

1
@iamcreasy, звичайно, ви можете використовувати карту висоти, щоб ваш будинок торкався до підлоги, але вам потрібно описати, як виглядає модель будинку (стіни, двері, будь-які меблі всередині), що неможливо описати в пікселі. Крім того, інформація про пікселі jsut не дасть точної орієнтації, тому ваші будинки будуть вирівняні (що не здасться природним чи "гарним").
XGouchet

1

Як я це роблю, це розділити карту висоти (я використовую поплавці, наприклад, 513 * 513) та splatmap ("текстура управління"), яка часто потребує більшої роздільної здатності (я використовую 32-бітові удари, 512x512).

Карта висоти створює сітку (місцевість, трикутники).

Контрольна карта охоплює всю місцевість, і кожен її шар (RGBA) говорить про те, скільки скажуть Камінь, Бруд, Дорога тощо. Ви повинні побачити на місцевості.

Таким чином ви можете скористатися редактором, щоб: а) створити місцевість; б) пофарбуйте місцевість (за допомогою скелі, бруду, дороги тощо)

Зробіть швидкий гугл на тему "картина висоти карти", "карта висоти" і таке, щоб отримати більш ретельне пояснення або скачайте, скажімо, Unity3D, щоб перевірити, як це може працювати в "реальності".

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