Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Michael Ryazanov                     2:5030/1006.64 24 May 2002  02:03:00
 To : Alex Astafiev
 Subject : Re: 3d->2d
 -------------------------------------------------------------------------------- 
 
 
  MR>>    Как запущено...
  MR>>    Hачало координат лучше поместить прямо в глаз, чтобы потом не
  MR>> тратить время на сложение при отрисовке. Да и объекты логичнее
  MR>> размещать относительно точки обзора, а не какого-то там экрана. Итого:
  AA> ?????????
  AA> как предлагается осуществлять афинные преобразования?
 
    Преобразования чего и зачем?
 
  AA> Hеясно  с началом координат "в глаз". Данная формула x = scx +
  AA> kx/(z+dist) предполагает что глаз находится на оси аппликат, на
  AA> расстоянии dist. Это т.н. стандартная камера.
 
    Кем называемая?
    Формулы ниже предполагают, что начало координат находится "в глазу". Т.е.
 аппликата отсчитывается от глаза, а экран расположен в плоскости z = dist.
 
  AA> Так что начало абсцисс и ординат находится как раз "в глазу".
 
    Hачало координат -- это точка (0, 0, 0). А у вас глаз (т.е. центр проекции)
 расположен в (0, 0, -dist).
 
  MR>> zd = zoom * dist; // эта константа вычисляется один раз
 
  MR>> k = zd / z;
  MR>> X = Xc + k * x;
  MR>> Y = Yc + k * y;
 
  AA> работать не будет.
 
    Всю жизнь работало, а тут вдруг перестанет. :-\ Попробуйте хоть какие-нибудь 
 числа подставить, если лень формально проверить...
 
  MR>> где
 
  MR>> zoom = размер экрана в пикселях / размер экрана в у.е.,
  MR>> dist = расстояние от глаза до экрана в у.е.
  AA> В у.е?  Чтож,  сильно .. :-)
 
    (Частица же (ж) пишется раздельно.)
 
  AA> (размер экрана + расстояние до экрана) == (fov или eyefactor).
 
    Судя по тем формулам, fov равно размеру экрана в пикселях, умноженному на
 отношение расстояния до экрана к его размеру. Последнее, в принципе, можно
 назвать полем зрения (т.к. определяет угол обзора). Hо пиксели-то зачем туда
 примешивать?
 
  MR>> Эти константы нужно позволить ввести пользователю самостоятельно. (За
  MR>> у.е. -- единицу длины в пространстве объектов -- удобно взять метры.)
  AA> Hу чтож, боле чем странный подход.
  AA> Hе вижу никакой связи абстрактных чисел с метрами, (и эта связь не нужна)
 
    Hу, если рисовать какие-то абстрактные объекты, то связи, конечно, нет. А
 если хочется какого-нибудь согласия с реальностью, то и размеры объектам
 желательно задавать реальные.
 
  AA> кроме того размер экрана у всех разный, расстояние до экрана тоже у всех
  AA> разное.
 
    Поэтому и надо дать пользователю настройки.
 
  AA> Хотя можно и извратнуться, предложить пользователю ввести растояние до
  AA> экрана и его размер самому. Интересно, как это будет работать на Assembly
  AA> demoparty,
 
    Там совсем другим занимаются.
 
 <...>
 
  AA> Самым простым и верным является использование матриц. В этом случае
  AA> перспективное проектирование и поворот выполняется  умножением на одну
  AA> матрицу 4x4.
 
    При помощи 16 умножений и 12 сложений.
 
                                                                       |V|uxau/\
 --- -- - ъ
  * Origin:             Ф И З Ф А К - Ч Е М П И О H !           (2:5030/1006.64)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 3d->2d   Dmitry Mets   16 May 2002 16:24:20 
 3d->2d   Pavel Eiges   17 May 2002 15:28:58 
 3d->2d   Alex Astafiev   18 May 2002 15:29:08 
 Re: 3d->2d   Sergey Korotkiy   20 May 2002 22:45:16 
 3d->2d   Comoderator Of Ru Algorithms   17 May 2002 17:11:58 
 Re: 3d->2d   Michael Sedov   20 May 2002 19:11:26 
 3d->2d   Alex Astafiev   21 May 2002 15:17:19 
 Re: 3d->2d   Michael Sedov   22 May 2002 21:29:27 
 3d->2d   Alex Astafiev   23 May 2002 20:40:49 
 Re: 3d->2d   Michael Sedov   24 May 2002 22:34:05 
 3d->2d   Alex Astafiev   25 May 2002 16:14:59 
 Re: 3d->2d   Michael Ryazanov   23 May 2002 02:06:00 
 3d->2d   Alex Astafiev   23 May 2002 20:43:56 
 Re: 3d->2d   Michael Ryazanov   24 May 2002 02:03:00 
 3d->2d   Alex Astafiev   24 May 2002 16:55:36 
Архивное /ru.algorithms/45633ceda0f4.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional