Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > API приложений и сред

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 26.10.2015, 16:51
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 1  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
По умолчанию Коллизия двух мувиклипов - как проще?

2D-платформер. Препятствие представлено прямоугольным объектом, который расширяется и сжимается по горизонтали. Примерно в полтора-два раза. Персонаж перепрыгивает его рыбкой по параболе и при этом слегка сучит ногами-руками в полете. Причем, персонаж достаточно крупный и задел он или не задел препятствие хорошо видно. И препятствие и персонаж представлены двумя мувиклипами.

Как проще обработать коллизию?

В частности, интересует критический случай, когда перс чуть-чуть не допрыгнул. Визуально это выглядит как то, что он перепрыгивает препятствие, но задевает его ногами.

Была мысль представить препятствие прямоугольником, а перса набором окружностей, этаким снеговиком. Но пока не уверен.

Старый 26.10.2015, 17:07
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 2  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Прикрути нейп и не парься. Работы на час от силы.

Старый 26.10.2015, 18:57
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 3  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Посмотрел Nape. Что-то сомневаюсь, что это час.

С другой стороны, я тут сам для себя выяснил, что у меня фактически задача сводится к поиску пересечения двух прямоугольников, расположенных под углом друг к другу, причем, все координаты известны. Не хочется изобретать очередной велосипед, но что-то готовых функций в Инете не вижу.

Старый 26.10.2015, 19:19
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 4  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
В нейпе все очень просто. API гораздо проще и понятнее, чем в box2d. Плюс на офсайте просто гора разных примеров. Все разжевано

Старый 27.10.2015, 06:06
AlexCooper вне форума Посмотреть профиль Отправить личное сообщение для AlexCooper Найти все сообщения от AlexCooper
  № 5  
Ответить с цитированием
AlexCooper
 
Аватар для AlexCooper

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
Если без физ движка, как вариант, после прижка запускать покадровый обработчик. В теле которого получались позиции ( localToGlobal ) невидимих анкерных точек, которые создавали б каркас ( если анимация так же менялись с роликом ), и так же с препятствием. Соотвественно дальше нужно было всего лишь проверить, нет ли пересечений. Но конечно лучше делать препроверку. Т.е. сразу после прижка запускать механизм который просчитывал траекторию, правда если в полёте происходит управление персонажем, это не лучший совет. Лучший совет, как по мне, конечно же за товарищем caseyryan
__________________
return this...

Старый 27.10.2015, 10:10
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 6  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Ок, убедили, пошел на офсайт нейпа.

Старый 27.10.2015, 10:51
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 7  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
У нейпа еще плюс в том, что можно двигать объекты не по физике. Запретить вращение объектов, отключить гравитацию и перемещать их как и обычные дисплей объекты. В отличие от того же бокс2д, где перемещение тела простым присвоением ему новых координат было настоящей занозой в заднице. То есть это конечно работало, но было очень ресурсоемкой операций и иногда глючило. Здесь же легко можно отрабатывать только столкновения, при этом исползовать не кинематические тела, а простые динамические

Старый 08.12.2015, 09:41
TMonax вне форума Посмотреть профиль Отправить личное сообщение для TMonax Найти все сообщения от TMonax
  № 8  
Ответить с цитированием
TMonax
 
Аватар для TMonax

Регистрация: Mar 2012
Сообщений: 7
Можно представить 1 прямоугольник в виде 2-х треугольников, затем проверить вхождение в эти треугольники вершин другого прямоугольника, если входят, то пересекаются.
Затем поменять их ролями и проделать то же самое.
Все формулы пересечения точки и треугольника тут: http://cyber-code.ru/tochka_v_treugolnike/

Создать новую тему Ответ Часовой пояс GMT +4, время: 00:03.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 00:03.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.