Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.034 c
4-1085207955
Alex
2004-05-22 10:39
2004.07.04
использую ShellExecute мне нужно последовательное выполнение


14-1087391414
Ega23
2004-06-16 17:10
2004.07.04
Жена только что позвонила.


14-1087447444
Alecs61
2004-06-17 08:44
2004.07.04
НАС ЕЩЕ НЕ ПОХОРОНИЛИ?


1-1087460056
Глеб
2004-06-17 12:14
2004.07.04
Как мне программно поменять раскладку клавиатуры?


14-1086971417
cyborg
2004-06-11 20:30
2004.07.04
По телеку идёт финальный концерт "Фабрика звёзд"




   Наверх