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

Вниз

Ориентирование объекта в 3D пространстве (GLScene, Delphi)   Найти похожие ветки 

 
Samarik   (2007-01-04 15:11) [0]

Люди! Помогите! Вот начал делать игру, уже и объектв позагружал - вобщем всё сделал, но не учёл такую вещь: при нажатии на клавишу "вперёд" объект движеться вперёд (по оси "Х"), а когда я его поворачиваю в другую сторону (клавиши "влево" "вправо"), он всё равно движеться по оси "Х" (не в ту сторону в которую он повёрнут). Мне говорили что надо прикрепить к объекту координаты, чтоб при повороте и координаты двигались вслед за ним (всмысле координаты объекта всегда были 0,0,0), но не знаю как это сделать!
 Надеюсь что я свою проблему описал максимально понятно...
                           Заранее всем СПАСИБО!!!

Есле что пишите:Max3D@list.ru ICQ: 320539888


 
@!!ex ©   (2007-01-04 15:34) [1]

Забей?
на геймдев.
Пока... Научись программить. и такие вопросы сами отпадут.
Честно.
Я не издеваюсь и не пытаюсь показать свою крутизну.
Подожди до того момента как пройдешь в школе тригонометрию, а лучше всего в вузе Линейную алгебру и геометрию....
по себе сужу, после ЛА и АГ все эти вопросы - вообще халява.


 
Samarik   (2007-01-04 15:37) [2]


> Max3D@list.ru

Не пишите на этот ящик - он не пашет! Пишите сюда Maxsamarik@rambler.ru


 
Samarik   (2007-01-04 15:38) [3]


> Научись программить

программировать я умею, но до этого вопоса даже великие программисты еле доганяют.


 
@!!ex ©   (2007-01-04 15:50) [4]

Ок. Мое дело предложить.
Вот код из демки Яна Хорна(мир его праху), который лично я использую повсеместно.
перемещение по всем трем осям.
   
PX := PX + sin(Heading*pi/180)*DelayTime/10*MoveSpeed*CurrentSpeed;
PY := PY + cos(Heading*pi/180)*DelayTime/10*MoveSpeed*CurrentSpeed;
PZ := PZ + cos(Tilt*pi/180-pi)*DelayTime/10*MoveSpeed*CurrentSpeed;


Где Heading и Tilt - соответственно углы.
А PX,PY,PZ - координаты перса.


 
Samarik   (2007-01-04 16:01) [5]


> PX := PX + sin(Heading*pi/180)*DelayTime/10*MoveSpeed*CurrentSpeed;
>
> PY := PY + cos(Heading*pi/180)*DelayTime/10*MoveSpeed*CurrentSpeed;
>
> PZ := PZ + cos(Tilt*pi/180-pi)*DelayTime/10*MoveSpeed*CurrentSpeed;
>

А что это? Куда писать?


 
ors_archangel ©   (2007-01-04 17:03) [6]

[5] - вопросы по существу :)


 
Ангел с дудкой   (2007-01-04 17:48) [7]

вопросы та по теме, но на них никто толком ответить не может, я сам в той писанине ничё не пойму, кто знает - ответте попонятнее.


 
Belorus ©   (2007-01-04 23:55) [8]


> до этого вопоса даже великие программисты еле доганяют.

Ого... Реально вопрос сложнейший. Уровня средней школы...
Нарисуй круг... Нарисуй ПДСК... Вспомни что такое синус, косинус, отметь на окружности  точку... Проведи перпендикуляры... Это как раз будут синус и косинус... Посчитай угол между точкой,центром ПДСК, и осью абсцисс..
По теореме пифагора посчитай расстояние до точки от центра ПДСК.
Повтори с ещё одной точкой...

Потом весь этот бред повтори на щаре в пространстве... Там будет 3 координаты.
И ты увидишь что @!!ex был прав.


 
Samarik   (2007-01-05 10:45) [9]

Спасибо! у меня получилось! посидел часа два с калькулятором и с 4-го раза всё получилось!


 
Saymon   (2007-01-05 14:57) [10]

Что такое ПДСК?
pls


 
ors_archangel ©   (2007-01-05 15:11) [11]

Думая, ДСК - это Декартова Система Координат, а насчёт "П" - наверно плоская, но не уверен


 
Belorus ©   (2007-01-05 21:47) [12]

Площе некуда ;)



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

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

Наверх




Память: 0.47 MB
Время: 0.044 c
2-1202882049
Shousheng
2008-02-13 08:54
2008.03.09
memo прозрачное выделение


15-1201875396
Riply
2008-02-01 17:16
2008.03.09
Экономия памяти при работе.


2-1202891080
alexnmsk
2008-02-13 11:24
2008.03.09
Поток в dll


4-1184224151
DelphiN!
2007-07-12 11:09
2008.03.09
RunAs программы под SYSTEM-ом не работает


2-1202986908
asdf2
2008-02-14 14:01
2008.03.09
Где найти компонент TNMHTTP?





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