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

Вниз

Арканоид   Найти похожие ветки 

 
Creep   (2004-06-24 19:18) [0]

Есть ли какие-нибудь принципы по созданию игры арканойда


 
wl   (2004-06-24 19:50) [1]

в смысле физика чтоли?


 
Creep   (2004-06-24 21:14) [2]

Да не просто у меня во многих случая не возможно все выбить квадкаты вот я и думаяю мош там какоенибудь сотношение сторон должно быть


 
ПсихЪ_клон   (2004-06-25 00:25) [3]

Дык, когда делаешь отскок мяча от плоскостей соприкосновения, то добавля небольшой РЭНДОМ, тогда рано или поздно выбить можно будет всё.

Я не знаю как ты делаешь отскок, но можно увеличивать или уменьшать угол отскока относительно центра платформы, которой управляет игрок.

Вообще, скачай Арканойд от Reflection Studio (вроде так пишется) и зацени, там всё очень наглядно!!! Порой, когда мячик летит вниз по очеь пологой траектории он может при отскоке от стены полететь вверх... (: РЭНДОМ (:


 
Goorus   (2004-06-25 04:12) [4]

Самый лучший арканойд, который я видел, это DXBall2. Там, если долго не выбиваются брики, то по ним бьёт молния и они разрушаются, а угол отлёта шарика от эээ... ну вот этой, что снизу, зависит от того, как близко столконовение относительно центра этой штуковины. А рэндом нужен в случае, если шарик "завис" в горизонтальной плоскости.


 
dhdd   (2004-06-25 04:34) [5]

Да, в DX-Ball2 шарик может циклиться долго (очень). Надо на самом деле делать RANDOM-отклонение при ударении о стенку, но это тебе (Вам) может не понравиться, т.к. это выход не по точной науке. А точно-рассчётно - это так: от силы ударения (у тебя - скорости) зависит угол проецирования инерции (у тебя - угол отскока), от этого угла и зависит дальнейшее направление движения. Это не просто RANDOM, а математически (и мат.-программно) правильное и реальное решение.


 
wiz ©   (2004-06-25 08:09) [6]

2 ПсихЪ_клон: кстати, в Ricochet (от Reflection Stidio или Arcade) всё сделано "физично" и без рандомов. Просто ребята ввели в задачу отражения спин (вращение) шарика. Поэтому он и может отражаясь лететь "обратно" (если правильно "закручен")


 
Creep   (2004-06-25 09:26) [7]

Спасибо за советы буду, увеличивать или уменьшать угол отскока относительно центра платформы, хотя проще зделать, что их молния выбивает.


 
Motzart   (2004-06-25 10:08) [8]

а кто-нить задумывался, что угол падения равен углу отражения?


 
ПсихЪ_клон   (2004-06-25 10:15) [9]


> wiz ©   (25.06.04 08:09) [6]

Хм, круто!!! Вот бы не подумал. Хитро придумано (:


> Motzart   (25.06.04 10:08) [8]

И долго ты задумывался над этим? Только где ты в жизни видел работающим этот закон? Угол отскок искажается в зависимости от материала из которого сделаны мяч и стенка, закрученности мяча, скорости мяча (при высокой скорости и малом угле мяч может просто проскользить по плоскости), и т.д.


 
Motzart   (2004-06-25 11:17) [10]

> wiz ©  
Видел,видел...вот кстати, а из какого материала сделана платформа и мячик в арканоиде? :-) ну чтоб учесть..


 
Andrey   (2004-06-25 11:21) [11]

>Motzart   (25.06.04 10:08) [8]

А в бильярд ты когданибудь играл? Не на компе.


 
wiz ©   (2004-06-25 14:04) [12]

2 Motzart [10]: Ну как обычно... Мячик - костяной. Платформа - из твёрдого дерева с обивкой (хорошо "помазанный" мелом). Стены - камень обитый сукном :))


 
ПсихЪ_клон   (2004-06-25 14:16) [13]


> wiz ©   (25.06.04 14:04) [12]

Ага, а хрени, которые нужно расшибать сделаны из разных материалов, определяющих поведение при попадании мяча.
Из материалов для разбиваемых хреней (как бы их правильно назвать-то?) можешь взять:
1. Глину красную, для изготовления силикатных кирпичей.
2. Стекло обычное.
3. Меловые останцы.
4. Слюду.
5. Ну и так далее, по вкусу. Хоть из дерьма их делай, тогда они будут забавно разлетаться, пачкая соседние хрени и жутко вонять! (:


 
Motzart   (2004-06-25 16:54) [14]

интересный арканоид....никогда не рубился в такой прикольный..где взять?
не на компе? ну да, играл, было дело..


 
aprm   (2004-06-29 16:52) [15]

Писал я как-то подобную вещь.
Нужно вычислять угол в зависимости от того, в какое место ракетки попал шарик. По краям: +-45градусов. В середине-вертикально. Плюс две зоны по бокам на самом краю - рандом от горизонта до 45 градусов


 
rezak ©   (2004-06-29 21:13) [16]


> Спасибо за советы буду, увеличивать или уменьшать угол отскока
> относительно центра платформы, хотя проще зделать, что их
> молния выбивает.

я тоже такое писал я так делал:
разделил платформу на 7 кусков

30 45 60 90 60 45 30
--------------------
      платформа


 
Fredy314 ©   (2004-07-02 14:47) [17]

Можно не делить на участки а вычислять растояние как разницу координат центра ракетки и шарика. И угол отражения по центру равен углу падения а ближе к краям увеличивается или уменшается на ето самое растояние в градусах.

ПсихЪ_клон   (25.06.04 14:16) [13]

Интересная идея надо будет попробовать. Только рисунки всех етих материалов надо поискать или самому накалякать.


 
ПсихЪ_клон   (2004-07-02 15:17) [18]


> Fredy314 ©   (02.07.04 14:47) [17]

А разлетающееся дерьмо сделать системой частиц. После красивой анимации частицы, которые соприкоснулись с другими "хренями" привязать к этим хреням и отрисовывать вместе с ними. Как будто эти хрени теперь заляпаны дерьмом... (:


 
TButton   (2004-07-02 15:22) [19]

а как определить в какую сторону хрени (бриками их называют если не ошибаюсь) попал шарик? положим хрени (брики) организованы 2В массивом. я как-то раз пытался в этом направлении помыслить но ничего путнегог из этого не вышло.


 
ПсихЪ_клон   (2004-07-02 15:30) [20]


> TButton   (02.07.04 15:22) [19]

фигура для столкновения с хренью описывается прямоугольником. Мячик - окружностью. Когда проверяешь столкновение окружности и прямоугольника, то так или иначе вычисляешь расстояние от каждого ребра прямоугольника до центра окружности и проверяешь "а не меньше ли полученное расстояние радиуса окружности". Если меньше, то кричи о столкновениии и фиксируй обработанную грань. Вот и всё.


 
TButton   (2004-07-02 15:36) [21]

а если мячик за такт проходит >> своего радиуса?
и еще, как калькуляют расстояние от прямой до окружности, а то я свой справочник по математике кому-то дал по листать.


 
ПсихЪ_клон   (2004-07-02 16:29) [22]


> TButton   (02.07.04 15:36) [21]

Если мячик за такт проходит больше своего радиуса, значит у тебя кривой алгортим. Но можно в таком случае вычислять, "а не пересекаются ли отрезок, входящей в состав описывающей хрень фигуры и отрезок с координатами (Начальные координаты мячика, конечные координаты мячика)".

Если нужна формула, то копайся в алголисте и прочих РАМБЛЕРах. Но в целом вот: опускаешь из центра окружности перпендикуляр на отрезок и если такой перпендикуляр возможен определяешь его длинну. Далее, сравниваешь эту длинну в радиусом. Если полученная длинна меньше радиуса, значит произошло столкновение (пересечение). Хотя я уже повторяюсь.



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

Форум: "Игры";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.5 MB
Время: 0.039 c
1-1097850659
bushmen
2004-10-15 18:30
2004.10.31
Ярдык на рабочий стол


9-1088745772
X-Disa
2004-07-02 09:22
2004.10.31
Скролл карты


1-1097824953
Dionnis
2004-10-15 11:22
2004.10.31
Закрыть все формы приложения


4-1096000894
snake1977
2004-09-24 08:41
2004.10.31
Контекстное меню для каталога


1-1097668698
Students
2004-10-13 15:58
2004.10.31
Закладка в PageControl





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