| Cheburashka |
4.01.2011 15:21
Сообщение
#1
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 195 Пол: Мужской Реальное имя: Сергей Репутация: 2 |
Здравствуйте!
Появилась задумка создать подобие игры... Что-то вроде гонок. Но для начала нужно обдумать то, как будет двигаться машина в игре. В качестве машины я собираюсь брать изображение. Повернуть машину проблем не будет, но вот как её заставить ехать в сторону движения? Какие есть мысли по этому поводу? Я думал что можно отслеживать нахождения передней части машины и передвигать ее по координат декартовой системы. Или же математически вычислять отрезок. Посоветуйте пожалуйста =D -------------------- ♣♣♣
"Себя великим не считай, гордясь величьем предков, Величья не добудешь ты и золота ценою! Хоть светит на небе луна, но отраженным светом - Чужою славой не живи, не будь второй луною!!!" ♣♣♣ |
![]() ![]() |
| TarasBer |
6.01.2011 13:47
Сообщение
#2
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
Для обработки двух кнопок тебе надо повеситься на 9е прерывание и смотреть в 60й порт.
Ясно? А если серьёзно, то я когда-то модуль написал на эту тему. Ща найду.
KEYS.PAS ( 1.59 килобайт )
Кол-во скачиваний: 923Короче при старте приложения пиши InitKeys, при закрытии - CloseKeys, чтобы узнать, нажата ли кнопка, просто пиши if Pressed(N) then... Чтобы понять, как такое вообще работает, надо знать, что при нажатии кнопки на уровне железа происходит остановка программы и вызывается обработчик 9 го прерывания. То есть модуль заполняет массив сам, даже если программа в это время делает бесконечный цикл. Да, номера кнопок соответствуют их расположению на класе, а не алфавиту. Кстати, для обработки трёх кнопок уже не поможет ничего, и дело не в Паскале и не в Досе (под виндой в любой самой современной игре та же хрень), а в конструкции клавиатуры. -------------------- |
Сергей Меркурьев Игра гонки 4.01.2011 15:21
Unconnected "Как заставить её ехать в сторону движения... 4.01.2011 15:49
Сергей Меркурьев Ну в общем-то я имею ввиду обычное движение автомо... 4.01.2011 15:59
-TarasBer- x := x + speed * cos(angle);
y := y + speed * sin(... 4.01.2011 19:46
Сергей Меркурьев Всё настолько просто? Не может быть О_о... Как тол... 4.01.2011 19:49
-TarasBer- Не понял, а ты что ожидал?
Секретный, неизвестный ... 4.01.2011 20:11
Сергей Меркурьев Не, ну я просто думал что будет что-то посерьёзнее... 4.01.2011 21:05
-TarasBer- Ты геометрический смысл синуса и косинуса знаешь? ... 4.01.2011 22:03
Сергей Меркурьев У меня возник теперь другой вопрос, как обработать... 6.01.2011 11:50
Cheburashka Вот недавно продолжил работать над игрой, сложилос... 3.02.2011 23:06
TarasBer > Я поставил на форму таймер, который каждые 0.... 4.02.2011 10:23![]() ![]() |
|
Текстовая версия | 9.12.2025 4:44 |