コード例 #1
0
ファイル: RigidBody.cpp プロジェクト: realXtend/tundra-urho3d
void RigidBody::ApplyImpulse(const float3& impulse, const float3& position)
{
    // Cannot modify server-authoritative physics object
    if (!HasAuthority())
        return;
    
    // If impulse is very small, do not wake up the body and apply
    if (impulse.LengthSq() < cImpulseThresholdSq)
        return;
    
    if (!impl->body)
        CreateBody();
    if (impl->body)
    {
        Activate();
        if (position.Equals(float3::zero))
            impl->body->applyCentralImpulse(impulse);
        else
            impl->body->applyImpulse(impulse, position);
    }
}
コード例 #2
0
ファイル: Triangle.cpp プロジェクト: katik/naali
bool Triangle::IsDegenerate(const float3 &a, const float3 &b, const float3 &c, float epsilon)
{
    return a.Equals(b, epsilon) || a.Equals(c, epsilon) || b.Equals(c, epsilon);
}