Сортировка по Z в изометрии

техническая поддержка по Construct 2

Сообщение Сортировка по Z в изометрии
» 06 май 2013, 15:22

Новая задачка для умельцев! =))

Подскажите, пожалуйста, как сделать правильно сортировку по Z ? Перебрал множество вариантов, но так и не получилось грамотно реализовать. Подскажите кто знает.

Исходник:

z_sorting.capx
(12.66 КБ) Скачиваний: 120
Construct 2 r126

С меня плюс обязательно!+
Аватара пользователя

Игродел
Сообщений: 500
Я тут с 04 янв 2013
Репутация 70 [ ? ]

Сообщение Re: Сортировка по Z в изометрии
» 06 май 2013, 15:54

Значит так... Пример сделать не смогу, т.к. тут всё очень индивидуально и зависит от специфичности уровня. Могу только подсказать логику, как я это вижу на данный момент:
Первое, что тебе надо сделать - определиться, сколько у тебя будет уровней высоты. Ну, типа, Пол, ящик (если на него можно прыгнуть) и более высокий ящик = 3 уровня высоты.
Затем определить сколько у тебя будет уровней глубины. Очень желательно четко это продумать и наконец таки точно решить, сколько же их у тебя будет. Допустим, чтобы была большая вариативность расстановки предметов - сделаем 5 уровней глубины.
В принципе у тебя так и есть:
Изображение

Теперь надо придумать, как проверять на каком уровне глубины находится персонаж? Тут вариантов тьма. Можно проверять координаты ГГ, можно расставить те же самые линии в редакторе и проверять оверлап ГГ. Например, если ГГ оверлапает верхнюю линию - то значит он на уровне 5 и в действии меняем его Z-индекс на соответствующий.

Как я тебе писал уже в личке, я бы еще добавил приватные переменные к каждому активному объекту, которая бы говорила, на каком уровне находится этот объект. Как в глубину, так и в высоту. А уже с этим можно манипулировать как душе угодно.

Если объект в таком случае большой и занимает сразу несколько уровней - можно попробовать юзать данные переменных типа 00111 (5 цифр - 5 уровней, слева на право. Если 0 - уровней свободен, объект его не занимает, если 1 - объект занимает этот уровень)
Можно что-то с массивами подумать.
Пути геймдева неисповедимы!
Аватара пользователя

Игродел
Сообщений: 919
Я тут с 23 сен 2012
Откуда: Хабаровск
Двиг: Construct 2
Лицензия: Personal
VK: vk.com/virusfun
Репутация 147 [ ? ]

Сообщение Re: Сортировка по Z в изометрии
» 06 май 2013, 16:04

virusfun, спасибо! А вот скажи, возможно ли на одном слое позиционировать персонажа между объектами по Z или эти объекты придется расставлять на разные слои и перемещать самого персонажа между этими слоями? (и врагов соответственно).
Аватара пользователя

Игродел
Сообщений: 500
Я тут с 04 янв 2013
Репутация 70 [ ? ]

Сообщение Re: Сортировка по Z в изометрии
» 06 май 2013, 19:58

Developer, смотри в действиях группу действий: Z order :good2:
Аватара пользователя

Игродел
Сообщений: 401
Я тут с 08 янв 2013
Откуда: Мск
Репутация 218 [ ? ]

Сообщение Re: Сортировка по Z в изометрии
» 06 май 2013, 20:33

Ilyko96 писал(а):Developer, смотри в действиях группу действий: Z order :good2:

Во точно! Есть экшен Move to object. Правда пока не совсем понимаю, как его использовать, чтобы персонаж перемещался между объектами. Но буду думать. Спасибо!+
Аватара пользователя

Игродел
Сообщений: 500
Я тут с 04 янв 2013
Репутация 70 [ ? ]

Сообщение Re: Сортировка по Z в изометрии
» 07 май 2013, 01:36

Developer, причем это не просто можно, а даже очень желательно делать именно так! По-возможности расставлять все объекты на одном слое. Потому, что как говорят спецы - множество слоёв тормозят Канвас. Для кого-то и 1000 слоёв не будет преградой, а у кого-то и 10 будут снижать FPS, особенно если на этих слоях какие-либо глюки.
Я обычно разделяю по слоям только для параллакса и для удобства разделения интерфейса, каких-нибудь маркеров и самого игрового поля. Т.е. в итоге я стремлюсь использовать не более 5-и слоёв.

Это тупо, но пока так=((( Ждем улучшения технологий.
Пути геймдева неисповедимы!
Аватара пользователя

Игродел
Сообщений: 919
Я тут с 23 сен 2012
Откуда: Хабаровск
Двиг: Construct 2
Лицензия: Personal
VK: vk.com/virusfun
Репутация 147 [ ? ]

Сообщение Re: Сортировка по Z в изометрии
» 17 май 2013, 22:31

Все же мне не удалось сделать сортировку по Z, даже с использованием команды Move to object. Возможно, я просто неправильно ее использую. Посмотрите, скажите, где именно ошибка?

Исходник:
Z order.capx
(12.46 КБ) Скачиваний: 123
Construct 2 r126
Аватара пользователя

Игродел
Сообщений: 500
Я тут с 04 янв 2013
Репутация 70 [ ? ]

Сообщение Re: Сортировка по Z в изометрии
» 18 май 2013, 12:05

Ну что, нет идей? Никто еще похожую изометрию не делал? Просто у меня возникло сомнение, что пока еще в Construct 2 нет нужных команд для гибкого управления сортировкой по Z.
Аватара пользователя

Игродел
Сообщений: 500
Я тут с 04 янв 2013
Репутация 70 [ ? ]


Сообщение Re: Сортировка по Z в изометрии
» 18 май 2013, 17:13

Sailer писал(а):попробуй это http://www.scirra.com/forum/plugin-isom ... 46247.html

Спасибо!+ Плагин почти решил проблему, но он глюченный. У всех мигают объекты стоящие рядом на одной линии?

Z order_plugin.capx
(12.35 КБ) Скачиваний: 100
Construct 2 r126 Требуется плагин Isometric Z ordering based on Y
Аватара пользователя

Игродел
Сообщений: 500
Я тут с 04 янв 2013
Репутация 70 [ ? ]



Вернуться в Вопрос-Ответ по Construct 2

Сейчас эту тему просматривают

Зарегистрированные пользователи: нет зарегистрированных пользователей

Наверх