Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.04;
Скачать: CL | DM;

Вниз

АРКАНОЙД   Найти похожие ветки 

 
010101001010001010101001   (2004-03-11 21:34) [0]

Кто-нибудь объясните как сделать арканойд. Хотя бы самые основные алгоритмы. Плиз!


 
Servelat ©   (2004-03-11 22:21) [1]

>Хотя бы самые основные алгоритмы.
В принципе, все просто: летает шарик, врезается в кирпичи и доску снизу :) . Да это ты и сам знаешь :). В чем проблема реализации? Задай конкретный вопрос: "немогу отследить врезание шарика в кирпич" (или любой другой) - сразу тебе предложат пяток вариантов решения.
Кстати, если не изменяет память, на DelphiGFX был арканоид, посмотри там.


 
TButton ©   (2004-03-11 23:20) [2]

немогу отследить врезание шарика в кирпич
с доской разобрался, с кирпичами - нет. пользую DelphiX (DDraw, DXTimer), DXSpriteEngine - не пользую, не нравится мне он.


 
lyeh ©   (2004-03-12 00:18) [3]

TButton ©
Так это ты спрашиваешь?

А вопрос действительно непонятен... Если можешь определить столкновение с доской, с кирпичами тогда что?


 
Servelat ©   (2004-03-12 08:07) [4]

с доской разобрался, с кирпичами - нет
Я тоже пишу арканоид, и все совсем наоборот: с кирпичами разобрался, а с доской - еще нет :) . Давай меняться ? :)
Вообще, у меня получилось не сложно, но довольно длинно, на пальцах не объяснить. Могу код послать.


 
010101001010001010101001   (2004-03-12 20:34) [5]

Не могу определить столкновение с кирпичиками и самой палкой. Я хочу попробывать безу DelphiX


 
Zeqfreed ©   (2004-03-12 21:36) [6]

С панелькой - легко:
if (Ball.Y > Panel.Y - 5) and (Ball.Y < Panel.Y + Panel.Height + 5) and (Ball.X > (Panel.X - Panel.Width div 2)) and (Ball.X < (Panel.X + Panel.Width div 2)) then Ball.SpeedY := -Ball.SpeedY;


 
Zeqfreed ©   (2004-03-12 21:40) [7]

А с кирпичами тоже не сложно... IntersectRect поможет (если не требуется большой точности, то вполне кдовлетворительно получится)...


 
TButton ©   (2004-03-12 23:39) [8]

Zeqfreed © [6]
ага, я об том же


 
Asteroid ©   (2004-03-13 09:30) [9]

Геморройнее сделатьт нормамльный отскок (при ударе об угол).


 
010101001010001010101001   (2004-03-13 17:11) [10]

Вот в этом отскоке тоже есть проблемы, можете подсказать, как его правильно зделать?


 
010101001010001010101001   (2004-03-13 20:09) [11]

Ну, никто не знает?


 
cyborg ©   (2004-03-13 21:58) [12]

Если шарик ударился, например, в пределах пяти пикселей с края платформы, то смещение по Х сделай как OfsX=-(OfsX+random(3))


 
010101001010001010101001   (2004-03-14 10:42) [13]

Я УЖЕ ПОЧТИ ВСЁ СДЕЛАЛ, но вот одна проблемма осталось - как отследить, что ball ударился об горизонтальную или вертикальтую грань кирпичика. Ведь от этого меняется эффект с оси X на ось Y.



Страницы: 1 вся ветка

Текущий архив: 2004.07.04;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.022 c
3-1086421141
carmen
2004-06-05 11:39
2004.07.04
Запрет на удаление/изменение записи


3-1086870560
SPEED
2004-06-10 16:29
2004.07.04
СТАЖ


4-1085150163
Bent
2004-05-21 18:36
2004.07.04
передать при запуске потока


3-1086346203
Fishka
2004-06-04 14:50
2004.07.04
Excel "вылетает"


9-1078945718
Shopot
2004-03-10 22:08
2004.07.04
Движок.