Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2006.05.21;
Скачать: [xml.tar.bz2];

Вниз

Чистые коллизии в 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.013 c
2-1146460388
it_work
2006-05-01 09:13
2006.05.21
Как перевести из string в shortString


2-1146731925
49 Cent
2006-05-04 12:38
2006.05.21
Как удалить все компоненты сделанные в Run time


15-1145965134
mctarik
2006-04-25 15:38
2006.05.21
Опрос!!! Кодинг или Копирование чюжих исходников


4-1141029839
ionn
2006-02-27 11:43
2006.05.21
Как запретить сторонним программам раскрывать свои окна


2-1146809848
Mahab
2006-05-05 10:17
2006.05.21
DVD-RW





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский