Як ви обробляєте нерівні плитки під час візуалізації карти плитки?


13

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

Ось що я хочу зробити зі своєю картою плиток, в якій я не впевнений. Як ви бачите, верхні стіни набагато більші, ніж нижня та бічні (це також проблема моїх кутів, які мають непарні форми [більше схожі на L, а квадрат], а також більше, ніж 40x40px, що мої поточні плитки ).

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

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

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

Мій код на випадок, якщо ви хочете побачити, як я зараз його оброблюю : Map.java (pastebin) (редагувати: я не обробляю його, мав на увазі, як я зараз роблю карту)

tl; dr - як я можу взяти свою 2D-виглядну плиткову карту та змінити її на різну за розмірами плитку? чи є кращий спосіб робити те, що я намагаюся зробити? Чи є назва методу, який я повинен шукати під час гуглінгу?

Відповіді:


19

Є два стандартних способи зробити це.

  • Розбийте нестандартні розміри плитки на стандартні розміри плиток. Тож ці смуги стін стають "стеком" квадратних плиток, які ви просто знаєте, щоб розмістити їх разом у своєму редакторі рівнів. Такі ігри, як перші ігри Final Fantasy, працювали таким чином.
  • Нехай будь-який шматок плитки буде вище, ніж ваша стандартна висота плитки. Вирівняйте плитки внизу прямокутника плитки, що дозволить малювати зайві більше, ніж звичайна висота плитки. Малюючи карту, ви малюєте плитки починаючи зі зворотного боку (квадратики плитки вище на екрані) та закінчуючи нижньою плиткою (ті, що знаходяться внизу екрана). Це гарантує, що високі плитки на передньому плані належним чином накладені поверх плиток на задньому плані. Зауважте, що при такому підході ваша плитка все ще обмежена однією плиткою по ширині.

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


2
+1 для другого підходу. В основному, це переміщує вас з карти плитки до об'єктів на карті.
Кромстер

Ідеально дякую, я подумав, що це може бути щось подібне до другого варіанту, але я хотів переконатися, що я роблю це стандартизованим способом. = D
затримка

2

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

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