Делаю экспорт из 3D MAX. Нужно взять нормаль опорной точки (Pivot). Для тестов нормали Pivot задаю равными (0, -1, 0) (т.е. всегда направленными вверх).
Экспорт делаю так:
В результате, если задано выравнивание по объекту, то нормали получаются всегда (0,5774, -0,5774, -0,5774).
Если выравнивание задано по мировым координатам, то для четырёх объектов получаются нормали:
(-1, 0, 0), (0,6306, 0,7761, 0), (0,0624, 0, -0,9981), (0,0624, 0, -0,9981).
Вопрос:
1) почему так путаются нормали ?
2) как правильно экспортировать нормали опорных точек ?
Экспорт делаю так:
Код:
AffineParts ap;
nodePivot = node->GetNodeTM(0);
decomp_affine(nodePivot, &ap);
Point3 vi;
vi.x = ap.q.x;
vi.y = ap.q.y;
vi.z = ap.q.z;
vi = Normalize (vi);
pivot.nx = vi.x;
pivot.ny = vi.y;
pivot.nz = vi.z;
Если выравнивание задано по мировым координатам, то для четырёх объектов получаются нормали:
(-1, 0, 0), (0,6306, 0,7761, 0), (0,0624, 0, -0,9981), (0,0624, 0, -0,9981).
Вопрос:
1) почему так путаются нормали ?
2) как правильно экспортировать нормали опорных точек ?