Exemplo n.º 1
0
static void convertLTMs(Frame*  frame)
{
	frame->LTM._13 *= -1;
	frame->LTM._23 *= -1;
	frame->LTM._33 *= -1;
	frame->LTM._43 *= -1;

	Vector at;
	D3DXVec3Cross( &at, &dxRight( &frame->LTM ), &dxUp( &frame->LTM ) );	
	frame->LTM._31 = at.x, frame->LTM._32 = at.y, frame->LTM._33 = at.z;

	if( frame->pFrameSibling ) convertLTMs( static_cast<Frame*>( frame->pFrameSibling ) ); 
	if( frame->pFrameFirstChild ) convertLTMs( static_cast<Frame*>( frame->pFrameFirstChild ) );
}
Exemplo n.º 2
0
Vector3f Frame::getRight(void)
{
    if( isDirty() ) synchronizeSafe();
    return wrap( dxRight( &LTM ) );
}