![]() |
Модераторы: Snowy, Alexeis, MetalFan |
![]() ![]() ![]() |
|
Ripper |
|
|||
![]() Lonely soul... ![]() ![]() Профиль Группа: Участник Сообщений: 920 Регистрация: 30.6.2004 Где: г. Москва Репутация: нет Всего: 23 |
ой... чет все кнопки местами поменялись=) незнаю не могу почуствовать как в любой игре движение .. у меня все как то криво.. вот я написал (cos(alpha*pi/180), sin(alpha*pi/180), 0);
и на кнопку повесил увиленичение/уменьшение alpha.. ну по окружности я могу менять взгяд но во первых поменялись кнопки т.е. раньше если кнопка d - движениие вправо то сейчас вверх =) И я же не могу "голову" ака камеру повернуть вверх допустим?? Все таки если представить что камера это допустим косм. корабль а сфера - планета.. я не могу свободно перемещатся в космосе ![]() вообще хочу сделать небольшой уровень чтоб ходить по нему можно было =) -------------------- "Он знает: надо смеяться над тем, что тебя мучит, иначе не сохранишь равновесия, иначе мир сведет тебя с ума" - Над кукушкиным гнездом |
|||
|
||||
p0s0l |
|
|||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 16 Всего: 112 |
Блин, я тебя вообще неправильно понял
![]() Ты про одно, я про другое ![]() То что я тебе сказал - забудь ![]() Делай так, как в примере с цилиндрами. Без sin/cos тут не обойтись... Блин, если бы не сессия, я бы накидал примерчик "беганья по уровню", с комментариями и объяснениями... А так пока не могу... -------------------- С уважением, г-н Посол. |
|||
|
||||
Ripper |
|
|||
![]() Lonely soul... ![]() ![]() Профиль Группа: Участник Сообщений: 920 Регистрация: 30.6.2004 Где: г. Москва Репутация: нет Всего: 23 |
да ладно ничего =)
Помойму я догнал немного... можно ведь менять это.. координаты куда я смотрю для поворота объекта.. ну допустим иду я вперед (это уже есть) прохожу куб.. но взглянуть я на него не смогу т.е. повернутся на право. на какую нить кнопку вешаю например чтобы координата куда я смотрю по Х менялась..значит будет поворот либо вправо либо влево Во как -------------------- "Он знает: надо смеяться над тем, что тебя мучит, иначе не сохранишь равновесия, иначе мир сведет тебя с ума" - Над кукушкиным гнездом |
|||
|
||||
p0s0l |
|
||||||||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 16 Всего: 112 |
Правильнее так: alpha - угол поворота вокруг оси Y тогда перемещение камеры вперед будет так:
Теперь, координаты цели высчитываются от координаты камеры и угла поворота так:
А координаты y пока пусть совпадают... Вот и все дела... На действия мыши (OnMouseMove) повесь изменения угла alpha при движении мышью влево-вправо. Движение назад, влево и вправо, думаю, легко догадаться как сделать. Например, движение влево будет аналогично движению вперед, только угол поворота уменьшаем на 90 градусов (т.е. pi/2):
(хотя можно и немного легче, но не буду запутывать...) Это сообщение отредактировал(а) p0s0l - 8.1.2005, 14:11 -------------------- С уважением, г-н Посол. |
||||||||
|
|||||||||
Ripper |
|
|||
![]() Lonely soul... ![]() ![]() Профиль Группа: Участник Сообщений: 920 Регистрация: 30.6.2004 Где: г. Москва Репутация: нет Всего: 23 |
Ой.. долго пробывал.. незнаю... че то не совсем я эту вещь догоняю =)
Ну получлось но не совсем то опять... вот я двигатся могу все нормально. могу поворачивать голову.. но после поворота.. как бы сказать.. вот я иду допустим по дороге вперед. повернул голову. смотрю вправо а идти продолжаю вперед =) а мне надо раз я голову повернул то идти туда куда повернул... т.е. поворот есть а движение в сторону поворота нету. И как на мышку повесить изменение угла?)) вот что у меня получилось (с цилиндров взял):
Только где ты говорил про движение влево у меня почему то он идет прямо ? кстати alpha:=0; cam_speed:=0.1; и в прорисовке: gluLooKAt(cam_x,cam_y,cam_z, cam_x + cos(alpha*d2r)*cam_speed, cam_y, cam_z + sin(alpha*d2r)*cam_speed, 0,1,0); -------------------- "Он знает: надо смеяться над тем, что тебя мучит, иначе не сохранишь равновесия, иначе мир сведет тебя с ума" - Над кукушкиным гнездом |
|||
|
||||
p0s0l |
|
||||||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 16 Всего: 112 |
Ошибка в том, что если у тебя используется синус и косинус при движении для x и z, а в gluLookAt - наоборот, для z и x соответственно... А нужно, чтобы было одинаково... Поэтому и получается, что идешь прямо, но смотришь влево (или вправо...)...
Т.е. сделай так:
-------------------- С уважением, г-н Посол. |
||||||
|
|||||||
Ripper |
|
|||
![]() Lonely soul... ![]() ![]() Профиль Группа: Участник Сообщений: 920 Регистрация: 30.6.2004 Где: г. Москва Репутация: нет Всего: 23 |
ТЫксь.. все работает... классна
![]() Теперь надо думать насчет поворота вверх и полета =) ехх.. -------------------- "Он знает: надо смеяться над тем, что тебя мучит, иначе не сохранишь равновесия, иначе мир сведет тебя с ума" - Над кукушкиным гнездом |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Звук, графика и видео" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делится вскрытыми компонентами
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |