PMG
http://forum.pmg.org.ru/

D3DXFrameCalculateBoundingSphere
http://forum.pmg.org.ru/viewtopic.php?f=2&t=2421
Страница 1 из 1

Автор:  Михаил [ 02 май 2007 04:12 ]
Заголовок сообщения:  D3DXFrameCalculateBoundingSphere

Люди, помогите плиз. Вышеобъявленная функция (D3DXFrameCalculateBoundingSphere) не хотит работать как надо: возвращает радиус меши равный нулю. Центр етой сферы - (0,0,0) тож думаю неправильный.

Код:
HRESULT hr;
hr = D3DXFrameCalculateBoundingSphere(pFrame, &pFrame->vecObjCenter,
                    &pFrame->fObjRadius);


На вход ей давал структурку производную от D3DXFRAME:

Код:
struct D3DXFRAME_EX : public D3DXFRAME
{
  CAnimController    *pAnimContr;
  D3DXMATRIX      comboMatrix;
  D3DXVECTOR3      vecObjCenter;
  float        fObjRadius;
};


От D3DXMESHCONTAINER тож сделал производную:

Код:
struct D3DXMESHCONTAINER_EX : public D3DXMESHCONTAINER
{
  D3DXMESHDATA    renderMesh;
  D3DXMATRIX      **ppFrameMatrices;
  D3DXMATRIX      *pBoneMatrices;
};



В этих структах загружена стандартная моделька - <tiny.x>. Отображается все верно, но радиус и центр сферы - нули, хотя функция не возвращает ошибку.

Автор:  Михаил [ 02 май 2007 11:58 ]
Заголовок сообщения: 

Неужель неподскажет никто? =((

Автор:  MagicWolf [ 02 май 2007 13:25 ]
Заголовок сообщения: 

Не искал в инете готовых примеров? Надо найти и компильнуть посмотреть, что они показывают!

Автор:  Михаил [ 02 май 2007 15:30 ]
Заголовок сообщения: 

Посмотрел в нете. Говорят, нужно "получить указатель на корневой фрейм" и ищут его както через AllocateHierarchy. Что ето за "корневой фрейм" они имеют ввиду? Если это просто первый фрейм в иерархии, то у меня так и есть

Автор:  MagicWolf [ 03 май 2007 11:22 ]
Заголовок сообщения: 

Корневой фрейм - это однозначно первый фрейм в иерархии, как правило его делают пустышкой, а потом к нему все и вешают...

Страница 1 из 1 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/