コード例 #1
0
//-----------------------------------------------------------------------------
//  GetWorldBounds
//-----------------------------------------------------------------------------
NxBounds3   CPhysicObj::GetWorldBounds (void) const
{
    assert( m_bActivated );

    int         nNumParts = GetNumParts();
    // NOTA: Siempre tendremos que tener al menos 1 parte. 
    NxBounds3   result = GetWorldBounds (0);
    // El resto de bounds los combinamos con el resultado
    for (int i = 1; i < nNumParts; i++)
    {
        result.combine (GetWorldBounds(i));
    }

    return result;
}
コード例 #2
0
const CBoundingBoxAligned CModel::GetWorldBoundsRec()
{
	CBoundingBoxAligned bounds = GetWorldBounds();
	for (size_t i = 0; i < m_Props.size(); ++i)
		bounds += m_Props[i].m_Model->GetWorldBoundsRec();
	return bounds;
}
コード例 #3
0
ファイル: pxShape.cpp プロジェクト: S-V/Lollipop
pxReal pxShape::GetEffectiveRadius( const pxVec3& direction ) const
{
	pxAABB bounds;
	GetWorldBounds( pxTransform::GetIdentity(), bounds );
	pxVec3 support = pxAabbSupport( bounds.GetSize(), direction );
	return support.Length();
}
コード例 #4
0
ファイル: Room.cpp プロジェクト: BenLubar/riflemod
const Vector& CRoom::WorldSpaceCenter()
{
	Vector mins = vec3_origin;
	Vector maxs = vec3_origin;
	GetWorldBounds( &mins, &maxs );

	Vector &vecResult = AllocTempVector();
	vecResult = ( mins + maxs ) / 2.0f;
	return vecResult;
}