Текущий архив: 2006.05.21;
Скачать: CL | DM;
Вниз
Чистые коллизии в GLScene Найти похожие ветки
← →
!Trinix © (2005-10-23 19:14) [0]Помогите, пожалуйста. Решил поучаствовать в конкурсе "скроллер". Так как размер дистрибутива аж 1,5 Мб, то работал в GLScene. На данный момент отработал уже весь код, но есть одна тупая проблема. Для соприкосновения с бонусами использую следующий код:
[code]
if ((Object1.Name=DCPlayer.Name)and(Object2.Name=PN.BrillPower.Name)) then begin
pow := true;
PN.BrillPower.Visible := False;
PN.kolobok.Scale.Scale(1.5);
end;
if ((Object1.Name=DCPlayer.Name)and(Object2.Name=PN.BrillJump.Name)) then begin
jump := true;
PN.BrillJump.Visible := False;
jumpStreght := jumpStreght*2;
end;
[/code]
Здесь две ошибки:
1) Брилы становятся невидимыми, но по прежнему идет события столкновения с ними (это я сам смогу решить).
2) Когда я сталкиваюсь с каким-нибудь брилом, то идет обработка событий, для всех брилов. Т. е. взял бонус прыжка и начал не только прыгать, но и еще в полтора раза вырос, что с этим сделать?
← →
Antonn © (2005-10-23 19:20) [1]
> Решил поучаствовать в конкурсе "скроллер".
молодец, я тоже поучавствую:)
в ГЛСцене вообше не шарю, но попробую:
PN.BrillPower.Name и PN.BrillJump.Name разные имена?
случайно в одном и том же месте не лежат ли 2 бонуса (один в другом)?
возможно где то еще обработка идет, может begin..end не в том месте проставлен?
> Брилы становятся невидимыми, но по прежнему идет
> события столкновения с ними (это я сам смогу решить).
можно координату сменить, пусть за картой сидит:)
← →
!Trinix © (2005-10-23 19:21) [2]Ок координату, я после этого сообщения сменил, а вот с тем, чтобы ничто ничего не задевало я хорошо позаботился.
← →
Fosgen (2005-10-23 20:52) [3]1. Вообще-то надо не координату менять, а ставить CollisionIndex или CollisionGroup (сейчас не помню точно) меньше 0. Тогда объект исключается из обработки коллизий. Невидимость не предотвращает столкновения, несмотря на таковое описание в доке.
2. А у тебя случаем эти самые "брилы" не прокси объектом созданы? Просто прокси-объект рассматривается как единый объект. И лично я имел сложности при обработке столкновений с прокси ввиду того что попадание объекта в суммарный объем прокси-объектов вызывает столкновения.
Ко всему прочему - не ясно а как у тебя отличаются по имени эти самые "брилы"?
Страницы: 1 вся ветка
Текущий архив: 2006.05.21;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.011 c