Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 26.08.2010, 12:52
zatoichi вне форума Посмотреть профиль Отправить личное сообщение для zatoichi Найти все сообщения от zatoichi
  № 1  
Ответить с цитированием
zatoichi
 
Аватар для zatoichi

Регистрация: Aug 2010
Адрес: 55.1° с.ш. 82.56° в.д.
Сообщений: 25
По умолчанию Как точно определить позицию на сцене вращающегося 3d объекта!

Доброго времени суток!

У меня не получается точно определить глобальные координаты 3d объекта, являющегося ребенком иерархии нескольких DisplayObjectContainer'ов (точнее Sprite'ов), причем эти родители динамически вращаются в 3d пространстве.
Определяю положение объекта на сцене таким образом:
Код AS3:
var objPoint:Point = obj3D.local3DToGlobal(new Vector3D(0,0,0));
При этом координаты постоянно смещаются в зависимости от поворотов 3d объекта
Пробовал и по-другому:

Код AS3:
var objPoint:Point = obj3D.parent.local3DToGlobal(new Vector3D(obj3D.x,obj3D.y,obj3D.z));
И так:

Код AS3:
var objPoint:Point = obj3D.local3DToGlobal(new Vector3D(obj3D.x,obj3D.y,obj3D.z));
Но последнее это конечно не то, что нужно))
Координаты вроде близко, но не те (отклонения достигают 150 пикселей в зависимости от поворота объекта (точнее его прародителя)). Это можно просмотреть при помощи другого объекта, который я добавляю к root, с заданными координатами objPoint.

Добавлено через 1 час 17 минут
Проблему решил с допустимыми погрешностями в 2-4 пикселя. Проблема была в некотором отставании расчета от времени rendering'а объекта.

Создать новую тему Ответ Часовой пояс GMT +4, время: 01:13.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.