Вниз
Скачать: 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.036 c
1-1087543797
snake2003
2004-06-18 11:29
2004.07.04
не отображаются компоненты


14-1087116108
RealRascal
2004-06-13 12:41
2004.07.04
А как....


14-1087448627
R
2004-06-17 09:03
2004.07.04
Регистрация псевдонима автора


6-1083741447
pirate
2004-05-05 11:17
2004.07.04
Сетевые соединения


1-1087549721
Lm
2004-06-18 13:08
2004.07.04
ShellListView &amp;#1210;фон




   Наверх