координаты
|
|
zver | Дата: Суббота, 11 Декабря 2010, 18:57 | Сообщение # 1 |
частый гость
Сейчас нет на сайте
| Подскажите как получить мировые координаты обьекта чтобы вдальнейшем изменять его позицию в пространстве ?
|
|
| |
mitch | Дата: Суббота, 11 Декабря 2010, 19:00 | Сообщение # 2 |
постоянный участник
Сейчас нет на сайте
| zver, когда ты создавал объект(если ты его создавал), то указывал координаты в каком месте его рисовать, вот собственно отсюда их и бери
|
|
| |
zver | Дата: Суббота, 11 Декабря 2010, 19:04 | Сообщение # 3 |
частый гость
Сейчас нет на сайте
| Quote (mitch) когда ты создавал объект(если ты его создавал), то указывал координаты в каком месте его рисовать, вот собственно отсюда их и бери нет я указываю только динамическим.
|
|
| |
mitch | Дата: Суббота, 11 Декабря 2010, 19:06 | Сообщение # 4 |
постоянный участник
Сейчас нет на сайте
| zver, всмысле? типа в процессе игры? ты кстати ООП используешь?
Сообщение отредактировал mitch - Суббота, 11 Декабря 2010, 19:10 |
|
| |
zver | Дата: Суббота, 11 Декабря 2010, 19:10 | Сообщение # 5 |
частый гость
Сейчас нет на сайте
| При загрузки карты считываеться текстовый файл в котором уже указанны координаты днм обьектов. А в процессе игры они меняют свои координаты от приложенной к ним силы.
|
|
| |
mitch | Дата: Суббота, 11 Декабря 2010, 19:13 | Сообщение # 6 |
постоянный участник
Сейчас нет на сайте
| zver, ну ты сначала координаты присваиваешь каким-то переменным и передаешь эти переменные в функцию, которую создает объект в заданных координатах, вот значение этих переменных и надо изменять
|
|
| |
zver | Дата: Суббота, 11 Декабря 2010, 19:13 | Сообщение # 7 |
частый гость
Сейчас нет на сайте
| Вот кусок кода Code // Создание днм примитивы Body[0] := dBodyCreate (World); dBodySetPosition (Body[0], 0, cSTARTZ+cWHEEL_OFFSET, Index*4.5); dMassSetBox (M, 1, cWIDTH, cHEIGHT, cLENGTH); dMassAdjust (M, cCMASS); dBodySetMass (Body[0], @M); Box[0] := dCreateBox (nil, cWIDTH, cHEIGHT, cLENGTH); dGeomSetBody (Box[0], Body[0]); Code begin glPushMatrix(); Pos := dBodyGetPosition(Body[0]); Rot := dBodyGetRotation(Body[0]); SetTransform(Pos, Rot); Boxs.Draw; // Отрисовка модели glPopMatrix();
|
|
| |
mitch | Дата: Суббота, 11 Декабря 2010, 19:20 | Сообщение # 8 |
постоянный участник
Сейчас нет на сайте
| zver, хм, что-то я не могу разобраться в коде) возможно в процедуре Boxs.Draw надо изменять координаты...
|
|
| |
zver | Дата: Суббота, 11 Декабря 2010, 19:24 | Сообщение # 9 |
частый гость
Сейчас нет на сайте
| дак вот я меняю спомошью функции glTranslate(); За тем при сохранении надо получить мировые координаты чтобы в дальнейшем двиг знал где будет нажодиться обьект и меша коллайда)
|
|
| |
mitch | Дата: Суббота, 11 Декабря 2010, 19:30 | Сообщение # 10 |
постоянный участник
Сейчас нет на сайте
| zver, в ОпенЖЛ я не силен)
|
|
| |