コード例 #1
0
ファイル: Quat.cpp プロジェクト: Garfield-Chen/tng
MATH_BEGIN_NAMESPACE

Quat::Quat(const float *data)
{
	assume(data);
#ifndef MATH_ENABLE_INSECURE_OPTIMIZATIONS
	if (!data)
		return;
#endif
#if defined(MATH_AUTOMATIC_SSE)
	q = loadu_ps(data);
#else
	x = data[0];
	y = data[1];
	z = data[2];
	w = data[3];
#endif
}
コード例 #2
0
ファイル: float3x4.cpp プロジェクト: entityhat/style
void float3x4::SetRow(int rowIndex, const float *data)
{
	assume(data);
#ifndef MATH_ENABLE_INSECURE_OPTIMIZATIONS
	if (!data)
		return;
#endif

#ifdef MATH_SIMD

#ifndef MATH_ENABLE_INSECURE_OPTIMIZATIONS
	if (rowIndex < 0 || rowIndex >= Rows)
		return; // Benign failure
#endif
	this->row[rowIndex] = loadu_ps(data); // Assume unaligned load, since we don't know if data is 16-byte-aligned.
#else
	SetRow(rowIndex, data[0], data[1], data[2], data[3]);
#endif
}