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

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.035 c
6-1083910065
Srg
2004-05-07 10:07
2004.07.04
idTCPServer, IP-адрес клиента


1-1087881907
Дарья
2004-06-22 09:25
2004.07.04
Помогите пожалуйста !


14-1087322775
YurikGL
2004-06-15 22:06
2004.07.04
Образование в России: реформа или катастрофа


1-1087305487
Zemal
2004-06-15 17:18
2004.07.04
Как реализовать интерфейс как в Delphi?


4-1085254938
kat
2004-05-22 23:42
2004.07.04
Как осуществить чтение данных из своей программы





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский