forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   2D-программирование (http://forum.boolean.name/forumdisplay.php?f=109)
-   -   Столкновения (http://forum.boolean.name/showthread.php?t=15988)

Spy4433 07.12.2011 21:33

Столкновения
 
Вложений: 1
и так :) вопрос вообщем то такой

есть персонаж и блок(квадрат) при столкновении персонаж не залипал в движении не перпендикулярно к блоку

moka 07.12.2011 21:59

Ответ: Столкновения
 
Хм.. да?

Igor 07.12.2011 22:13

Ответ: Столкновения
 
ой, сори, это не midlet pascal, а сообщение удалить нельзя:(

moka 07.12.2011 22:23

Ответ: Столкновения
 
Я один тут нифига не понимаю?

Leowey 07.12.2011 23:00

Ответ: Столкновения
 
Расшифровка (тоже бессмысленная):

Цитата:

Сообщение от Spy4433 (Сообщение 212908)
и так :) вопрос вообщем то такой

есть персонаж и блок(квадрат). Как сделать так, чтобы при столкновении персонаж не залипал в движении не перпендикулярно к блоку


tormoz 07.12.2011 23:16

Ответ: Столкновения
 
Цитата:

Сообщение от Leowey (Сообщение 212925)
Расшифровка:

А он залипает "не перпендикулярно" ?
Смазать ? Повернуть "перпендикулярно" ? Потребовать косарь ?

moka 07.12.2011 23:30

Ответ: Столкновения
 
А чего это 3 разных пользователя, стараются ответить на один вопрос, при этом с одной степенью невнятицы?
Или это одно лицо, или это заговор на пудрилово мозгов и так уставших от политической розни форумчан..


Чё нада? Чтобы персонаж отскочил перпендикулярно от поверхности, или наоборот отскочил исходя из вектора столкновения, то есть получить отражённый по перпендикуляру вектор движения объекта, и инвертированный, чтобы симулировать естественный отскок?

Ну ваще..

Leowey 07.12.2011 23:36

Ответ: Столкновения
 

Цитата:

Сообщение от MoKa (Сообщение 212939)
...

Чорт, перечитал первый пост и ничего не понял о_0. Это как так!?!? Нупский езык который понимают только нубы?? ._.

Igor 08.12.2011 00:09

Ответ: Столкновения
 
Я как-то летом делал физический 2д движок. Там были очень даже похожие прямоугольнички и кружочки на белом фоне, поэтому, увидев картинку, я подумал о midlet pascal и о том, что у меня была похожая проблема.
Написав сообщение, я увидел что раздел форума не тот, захотел удалить сообщение, но такой кнопочки почему-то не оказалось((
P.S. верните кнопку!

Spy4433 08.12.2011 00:35

Ответ: Столкновения
 
согласен вопрос поставил мего не корректно !
пример: counter-strike бежим персом в стенку не перпендикулярно а чуть чуть под углом. и когда перс упрется его начнет тянуть в ту сторону куда угол смещен.

в перемещении персонажа юзаю вектора

moka 08.12.2011 02:02

Ответ: Столкновения
 
Коллизия есть у тебя?
В коллизии всё просто, если нету никаких отскоков, то происходит как - двигается по вектору, далее проверяется на пересечение, при наличии такового объект двигается в направлении перпендикуляра отрезку с коллизией на расстояние чтобы быть чётко упёртым в отрезок.
Это имхо один из простейших вариантов.

А вообще, автор, поэкспериментируй, и поищи смекалку, не нужно задавать вопросы на которые толком ответа простого нет, шанс на то что кто-то за тебя код напишет - очень мал. Но и если будет - им спасибо!

Reizel 08.12.2011 12:54

Ответ: Столкновения
 
смещение угла, это сильно, да xD

Жека 08.12.2011 14:27

Ответ: Столкновения
 
Вектор скорости можно разложить на два - по осям X и Y, один из них "гасит" стенка, а второй остаётся, по нему и двигать. Разложить через синус и косинус.

Черный крыс 10.12.2011 00:54

Ответ: Столкновения
 
квадратику надо дать покурить

radiantstudio 08.01.2012 23:44

Ответ: Столкновения
 
Очень подходящая тема. Надеюсь вы меня простите за попутный вопрос.

Как бы определить точку столкновения 2х обьектов? Т.е найти координату точки их соприкосновения, если объекты прямоуголные и могут быть повернуты на произвольный угол.
ПС: А в идеале требуется сталкивать объекты произвольной формы.


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot