Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > C++

Ответ
 
Опции темы
Старый 19.04.2007, 18:56   #1
Errant
AnyKey`щик
 
Регистрация: 18.02.2007
Сообщений: 2
Написано 0 полезных сообщений
(для 0 пользователей)
Полет пули

Такая проблема: делаю FPS, надо сделать полет пули и определять ее коллизии со стенами. Весь уровень сделан в виде массива, в котором указываются стены\проходы. Помогите, плиз.
(Offline)
 
Ответить с цитированием
Старый 20.04.2007, 01:16   #2
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Re: Полет пули

0. какой двиг?
1. в виде какого массива? какая размерность? как указываются стены/проходы? как организован класс пули?
2. исходник в студию, или описывайте подробненько.
(Offline)
 
Ответить с цитированием
Старый 22.04.2007, 19:35   #3
Errant
AnyKey`щик
 
Регистрация: 18.02.2007
Сообщений: 2
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Полет пули

0. А движка нету.
1. Ну, массив BYTE, размерность 3, стены указываются цифрами 1, 2, 3, проходы - 0. класс пули, не сделан.
2. Игра простенькая - Лабиринт. Наша задача выбраться из него, лабиринт уже сделан, в него добавлен туман, все коллизии сделаны. Теперь захотел сделать врагов, что б интересней было. Зафигачил прицел, наложил на него Тга картинку с прозначностью. Воть в принципе и все.


Зы: Сорри, что долго не отвечал, меня дома не было.
(Offline)
 
Ответить с цитированием
Старый 22.04.2007, 22:22   #4
alcoSHoLiK
Дэвелопер
 
Регистрация: 17.01.2006
Сообщений: 1,512
Написано 78 полезных сообщений
(для 110 пользователей)
Re: Полет пули

Так это, преобразовывать координаты пули в номер эелемента массива и проверять, какая там цифра стоит.
Если предположить, что верхний левый угол лабиринта находится в точке (0; 0), а CELL_SIZE - ширина, длина и высота одной клетки матрицы, то:
int i = bullet.y / CELL_SIZE;
int j = bullet.x / CELL_SIZE;
int k = bullet.z / CELL_SIZE;

if (maze[i][j][k] == 0) {
   // столкновения не было
}
else {
   // твой код
}
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
SumoTori (отличная физика!) Matt Merkulov Игры / Games 16 26.03.2011 19:52
Сильно отличается? d3zmAn Прочие вопросы 3 31.12.2009 21:26
пули и Physx 3ghost Blitz3D 7 28.08.2009 21:54
Отличная Физика! moka Алгоритмика 3 25.08.2006 21:53
Чем они отличаются? KRIK 3D-программирование 8 21.09.2005 21:06


Часовой пояс GMT +4, время: 11:57.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com