|
[ На главную ] -- [ Список участников ] -- [ Правила форума ] -- [ Зарегистрироваться ] |
On-line: |
Форум движка Xtreme3D / Xtreme3D: вопросы и ответы / ObjectRotate |
Страницы: 1 |
Автор | Сообщение | |
Source бывалый Группа: Участники Сообщений: 36 |
Добавлено: 31-10-2009 00:47 | |
Как вручную повернуть объект?То-есть чтоб не относительно текущего поворота...Надеюсь понятно выразился | ||
Gecko Big Boss Группа: Администраторы Сообщений: 719 |
Добавлено: 31-10-2009 16:24 | |
ObjectSetRotation(object,x,y,z) | ||
Source бывалый Группа: Участники Сообщений: 36 |
Добавлено: 31-10-2009 17:33 | |
Я пробывал эту функцию...Но она как-то криво работает Вот например: ObjectSetRotation(actor,ObjectGetPitch(actor),ObjectGetTurn(actor),ObjectGetRoll(actor)) ,по идее объект не должен повернутся?Просветите как эта функция работает |
||
Gecko Big Boss Группа: Администраторы Сообщений: 719 |
Добавлено: 31-10-2009 18:55 | |
Функция делает то, что от нее требуется - указывает поворот объекта относительно локального нулевого поворота.
Дело в том, что ObjectGetPitch и остальные возвращают углы не относительно локального нуля. Они возвращают углы, измененные функциями ObjectPitch, ObjectTurn, ObjectRoll. При этом, после вызова, например, ObjectPitch(object,90), функция ObjectGetPitch(object) даст не 90, как можно подумать, а почему-то -90. В случае с ObjectRotate такого не наблюдается, но суть все равно такова: углы, с которыми работают функции относительного поворота (ObjectPitch и др.) - не те углы, с которыми работает ObjectSetRotation. |
||
Source бывалый Группа: Участники Сообщений: 36 |
Добавлено: 31-10-2009 23:04 | |
Еще хотел спросить,как сделать чтобы чар следил за мышой?Примерно как в алиен шутере...Пробывал через функцию ObjectPointToObject и пример 3д мыши,но опять таки поворот не возрашяется функциями ObjectGetPitch\ObjectGetTurn\ObjectGetRoll | ||
Gecko Big Boss Группа: Администраторы Сообщений: 719 |
Добавлено: 01-11-2009 10:52 | |
Нельзя ли поподробней? Я на нашем форуме постоянно натыкаюсь на фразы типа "примерно как в игре XXX". А это не объяснение. Иногда очень трудно понять, что имеется в виду. |
||
Hacker Ответственный за CHM Группа: Модераторы Сообщений: 346 |
Добавлено: 01-11-2009 12:52 | |
Мне кажется пора подкорректировать правила форума и вывести напоминание об их прочтении! Мне кажется в пункт 5 можно было добавить сие пояснение, естественно в стиле предупреждения |
||
Source бывалый Группа: Участники Сообщений: 36 |
Добавлено: 01-11-2009 13:15 | |
Так просто легче обьяснить...Вид сверху не много под углом,ноги стоят на месте,туловище смотрит в сторону мыши...Примерно такое имел ввиду | ||
Hacker Ответственный за CHM Группа: Модераторы Сообщений: 346 |
Добавлено: 01-11-2009 13:26 | |
Я понимаю, что легче, но не все поголовно играют в игры, я в своей компьютерной жизни, которой уже 4 года, проиграл все год, потом перестал и пойми, когда в пример приводят обливион или еще что-то подобное, то я например не понимаю, что требуется, так как никогда не играл в неё! Я не думаю, что сложно описать словами действия, правильней было бы подкреплять сказанные слова примером:
Я думаю так, было бы правильней! ДАЛЬНЕЙШИЕ СООБЩЕНИЯ ТОЛЬКО ПО ТЕМЕ! |
||
Gecko Big Boss Группа: Администраторы Сообщений: 719 |
Добавлено: 01-11-2009 17:01 | |
Хорошая мысль. Добавил.
А в чем проблема? ObjectSetRotation там и не нужен даже: deltax=(display_get_width()/2-MouseGetX())/8; deltay=(display_get_height()/2-MouseGetY())/8; MouseSetPosition(display_get_width()/2,display_get_height()/2); ActorRotateBone(actor,bone_torso,0,0,deltax/50); ActorRotateBone(actor,bone_torso,0,-deltay/50,0); У меня даже где-то был недопиленный пример. Правда, там вид со спины, но переделать нетрудно. Если надо - допилю, выложу. |
||
Source бывалый Группа: Участники Сообщений: 36 |
Добавлено: 01-11-2009 20:01 | |
Спасибо,да пример бы не помешал \ Чтоб новую тему не создавать,спрошу тут . Как возвратить поворот когда объект был повернут функцией ObjectPointToObject? |
||
Gecko Big Boss Группа: Администраторы Сообщений: 719 |
Добавлено: 05-11-2009 10:31 | |
Я думаю, самый лучший вариант - возвращать не углы поворота, а вектор Direction: ObjectSetDirection(object2, ObjectGetAbsoluteDirection(object1,0), ObjectGetAbsoluteDirection(object1,1), ObjectGetAbsoluteDirection(object1,2)); С ним уж точно никаких проблем быть не должно. |
Страницы: 1 |
Форум движка Xtreme3D / Xtreme3D: вопросы и ответы / ObjectRotate |