예제 #1
0
float4x4 operator *(const float4x4 &lhs, const TranslateOp &rhs)
{
	float4x4 r = lhs;
	r.SetTranslatePart(lhs.TransformPos(rhs.Offset()));

	// Our optimized form of multiplication must be the same as this.
	mathassert(r.Equals(lhs * rhs.ToFloat4x4()));
	return r;
}
예제 #2
0
파일: Ray.cpp 프로젝트: Ilikia/naali
void Ray::Transform(const float4x4 &transform)
{
    pos = transform.TransformPos(pos);
    dir = transform.TransformDir(dir);
}
예제 #3
0
float4x4 operator *(const float4x4 &lhs, const TranslateOp &rhs)
{
	float4x4 r = lhs;
	r.SetTranslatePart(lhs.TransformPos(DIR_TO_FLOAT3(rhs.Offset())));
	return r;
}