Renamed tvec into vec
This commit is contained in:
@@ -19,11 +19,11 @@ namespace detail
|
||||
};
|
||||
|
||||
template <typename T, precision P>
|
||||
struct compute_rgbToSrgb<4, T, P, tvec>
|
||||
struct compute_rgbToSrgb<4, T, P, vec>
|
||||
{
|
||||
GLM_FUNC_QUALIFIER static tvec4<T, P> call(tvec4<T, P> const& ColorRGB, T GammaCorrection)
|
||||
{
|
||||
return tvec4<T, P>(compute_rgbToSrgb<3, T, P, tvec>::call(tvec3<T, P>(ColorRGB), GammaCorrection), ColorRGB.a);
|
||||
return tvec4<T, P>(compute_rgbToSrgb<3, T, P, vec>::call(tvec3<T, P>(ColorRGB), GammaCorrection), ColorRGB.a);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -40,11 +40,11 @@ namespace detail
|
||||
};
|
||||
|
||||
template <typename T, precision P>
|
||||
struct compute_srgbToRgb<4, T, P, tvec>
|
||||
struct compute_srgbToRgb<4, T, P, vec>
|
||||
{
|
||||
GLM_FUNC_QUALIFIER static tvec4<T, P> call(tvec4<T, P> const& ColorSRGB, T Gamma)
|
||||
{
|
||||
return tvec4<T, P>(compute_srgbToRgb<3, T, P, tvec>::call(tvec3<T, P>(ColorSRGB), Gamma), ColorSRGB.a);
|
||||
return tvec4<T, P>(compute_srgbToRgb<3, T, P, vec>::call(tvec3<T, P>(ColorSRGB), Gamma), ColorSRGB.a);
|
||||
}
|
||||
};
|
||||
}//namespace detail
|
||||
|
||||
@@ -17,7 +17,7 @@ namespace detail
|
||||
|
||||
# if GLM_HAS_BITSCAN_WINDOWS
|
||||
template <precision P, bool Aligned>
|
||||
struct compute_log2<4, int, P, tvec, false, Aligned>
|
||||
struct compute_log2<4, int, P, vec, false, Aligned>
|
||||
{
|
||||
GLM_FUNC_QUALIFIER static tvec4<int, P> call(tvec4<int, P> const & vec)
|
||||
{
|
||||
|
||||
@@ -275,9 +275,9 @@ namespace detail
|
||||
{};
|
||||
|
||||
template <precision P>
|
||||
struct compute_half<1, P, tvec>
|
||||
struct compute_half<1, P, vec>
|
||||
{
|
||||
GLM_FUNC_QUALIFIER static tvec<1, uint16, P> pack(tvec<1, float, P> const & v)
|
||||
GLM_FUNC_QUALIFIER static vec<1, uint16, P> pack(vec<1, float, P> const & v)
|
||||
{
|
||||
int16 const Unpack(detail::toFloat16(v.x));
|
||||
u16vec1 Packed(uninitialize);
|
||||
@@ -285,68 +285,68 @@ namespace detail
|
||||
return Packed;
|
||||
}
|
||||
|
||||
GLM_FUNC_QUALIFIER static tvec<1, float, P> unpack(tvec<1, uint16, P> const & v)
|
||||
GLM_FUNC_QUALIFIER static vec<1, float, P> unpack(vec<1, uint16, P> const & v)
|
||||
{
|
||||
i16vec1 Unpack(uninitialize);
|
||||
memcpy(&Unpack, &v, sizeof(Unpack));
|
||||
return tvec<1, float, P>(detail::toFloat32(v.x));
|
||||
return vec<1, float, P>(detail::toFloat32(v.x));
|
||||
}
|
||||
};
|
||||
|
||||
template <precision P>
|
||||
struct compute_half<2, P, tvec>
|
||||
struct compute_half<2, P, vec>
|
||||
{
|
||||
GLM_FUNC_QUALIFIER static tvec<2, uint16, P> pack(tvec<2, float, P> const & v)
|
||||
GLM_FUNC_QUALIFIER static vec<2, uint16, P> pack(vec<2, float, P> const & v)
|
||||
{
|
||||
tvec<2, int16, P> const Unpack(detail::toFloat16(v.x), detail::toFloat16(v.y));
|
||||
vec<2, int16, P> const Unpack(detail::toFloat16(v.x), detail::toFloat16(v.y));
|
||||
u16vec2 Packed(uninitialize);
|
||||
memcpy(&Packed, &Unpack, sizeof(Packed));
|
||||
return Packed;
|
||||
}
|
||||
|
||||
GLM_FUNC_QUALIFIER static tvec<2, float, P> unpack(tvec<2, uint16, P> const & v)
|
||||
GLM_FUNC_QUALIFIER static vec<2, float, P> unpack(vec<2, uint16, P> const & v)
|
||||
{
|
||||
i16vec2 Unpack(uninitialize);
|
||||
memcpy(&Unpack, &v, sizeof(Unpack));
|
||||
return tvec<2, float, P>(detail::toFloat32(v.x), detail::toFloat32(v.y));
|
||||
return vec<2, float, P>(detail::toFloat32(v.x), detail::toFloat32(v.y));
|
||||
}
|
||||
};
|
||||
|
||||
template <precision P>
|
||||
struct compute_half<3, P, tvec>
|
||||
struct compute_half<3, P, vec>
|
||||
{
|
||||
GLM_FUNC_QUALIFIER static tvec<3, uint16, P> pack(tvec<3, float, P> const & v)
|
||||
GLM_FUNC_QUALIFIER static vec<3, uint16, P> pack(vec<3, float, P> const & v)
|
||||
{
|
||||
tvec<3, int16, P> const Unpack(detail::toFloat16(v.x), detail::toFloat16(v.y), detail::toFloat16(v.z));
|
||||
vec<3, int16, P> const Unpack(detail::toFloat16(v.x), detail::toFloat16(v.y), detail::toFloat16(v.z));
|
||||
u16vec3 Packed(uninitialize);
|
||||
memcpy(&Packed, &Unpack, sizeof(Packed));
|
||||
return Packed;
|
||||
}
|
||||
|
||||
GLM_FUNC_QUALIFIER static tvec<3, float, P> unpack(tvec<3, uint16, P> const & v)
|
||||
GLM_FUNC_QUALIFIER static vec<3, float, P> unpack(vec<3, uint16, P> const & v)
|
||||
{
|
||||
i16vec3 Unpack(uninitialize);
|
||||
memcpy(&Unpack, &v, sizeof(Unpack));
|
||||
return tvec<3, float, P>(detail::toFloat32(v.x), detail::toFloat32(v.y), detail::toFloat32(v.z));
|
||||
return vec<3, float, P>(detail::toFloat32(v.x), detail::toFloat32(v.y), detail::toFloat32(v.z));
|
||||
}
|
||||
};
|
||||
|
||||
template <precision P>
|
||||
struct compute_half<4, P, tvec>
|
||||
struct compute_half<4, P, vec>
|
||||
{
|
||||
GLM_FUNC_QUALIFIER static tvec<4, uint16, P> pack(tvec<4, float, P> const & v)
|
||||
GLM_FUNC_QUALIFIER static vec<4, uint16, P> pack(vec<4, float, P> const & v)
|
||||
{
|
||||
tvec<4, int16, P> const Unpack(detail::toFloat16(v.x), detail::toFloat16(v.y), detail::toFloat16(v.z), detail::toFloat16(v.w));
|
||||
vec<4, int16, P> const Unpack(detail::toFloat16(v.x), detail::toFloat16(v.y), detail::toFloat16(v.z), detail::toFloat16(v.w));
|
||||
u16vec4 Packed(uninitialize);
|
||||
memcpy(&Packed, &Unpack, sizeof(Packed));
|
||||
return Packed;
|
||||
}
|
||||
|
||||
GLM_FUNC_QUALIFIER static tvec<4, float, P> unpack(tvec<4, uint16, P> const & v)
|
||||
GLM_FUNC_QUALIFIER static vec<4, float, P> unpack(vec<4, uint16, P> const & v)
|
||||
{
|
||||
i16vec4 Unpack(uninitialize);
|
||||
memcpy(&Unpack, &v, sizeof(Unpack));
|
||||
return tvec<4, float, P>(detail::toFloat32(v.x), detail::toFloat32(v.y), detail::toFloat32(v.z), detail::toFloat32(v.w));
|
||||
return vec<4, float, P>(detail::toFloat32(v.x), detail::toFloat32(v.y), detail::toFloat32(v.z), detail::toFloat32(v.w));
|
||||
}
|
||||
};
|
||||
}//namespace detail
|
||||
@@ -641,18 +641,18 @@ namespace detail
|
||||
|
||||
// Based on Brian Karis http://graphicrants.blogspot.fr/2009/04/rgbm-color-encoding.html
|
||||
template <typename T, precision P>
|
||||
GLM_FUNC_QUALIFIER tvec<4, T, P> packRGBM(tvec<3, T, P> const & rgb)
|
||||
GLM_FUNC_QUALIFIER vec<4, T, P> packRGBM(vec<3, T, P> const & rgb)
|
||||
{
|
||||
tvec<3, T, P> const Color(rgb * static_cast<T>(1.0 / 6.0));
|
||||
vec<3, T, P> const Color(rgb * static_cast<T>(1.0 / 6.0));
|
||||
T Alpha = clamp(max(max(Color.x, Color.y), max(Color.z, static_cast<T>(1e-6))), static_cast<T>(0), static_cast<T>(1));
|
||||
Alpha = ceil(Alpha * static_cast<T>(255.0)) / static_cast<T>(255.0);
|
||||
return tvec<4, T, P>(Color / Alpha, Alpha);
|
||||
return vec<4, T, P>(Color / Alpha, Alpha);
|
||||
}
|
||||
|
||||
template <typename T, precision P>
|
||||
GLM_FUNC_QUALIFIER tvec<3, T, P> unpackRGBM(tvec<4, T, P> const & rgbm)
|
||||
GLM_FUNC_QUALIFIER vec<3, T, P> unpackRGBM(vec<4, T, P> const & rgbm)
|
||||
{
|
||||
return tvec<3, T, P>(rgbm.x, rgbm.y, rgbm.z) * rgbm.w * static_cast<T>(6);
|
||||
return vec<3, T, P>(rgbm.x, rgbm.y, rgbm.z) * rgbm.w * static_cast<T>(6);
|
||||
}
|
||||
|
||||
template <int D, precision P, template <int, typename, precision> class vecType>
|
||||
|
||||
@@ -154,7 +154,7 @@ namespace detail
|
||||
GLM_FUNC_QUALIFIER tquat<T, P>::tquat(tvec3<T, P> const & u, tvec3<T, P> const & v)
|
||||
{
|
||||
tvec3<T, P> const LocalW(cross(u, v));
|
||||
T Dot = detail::compute_dot<tvec<3, T, P>, T, detail::is_aligned<P>::value>::call(u, v);
|
||||
T Dot = detail::compute_dot<vec<3, T, P>, T, detail::is_aligned<P>::value>::call(u, v);
|
||||
tquat<T, P> q(T(1) + Dot, LocalW.x, LocalW.y, LocalW.z);
|
||||
|
||||
*this = normalize(q);
|
||||
|
||||
@@ -17,7 +17,7 @@ namespace detail
|
||||
};
|
||||
|
||||
template <precision P>
|
||||
struct compute_rand<1, uint8, P, tvec>
|
||||
struct compute_rand<1, uint8, P, vec>
|
||||
{
|
||||
GLM_FUNC_QUALIFIER static tvec1<uint8, P> call()
|
||||
{
|
||||
@@ -27,7 +27,7 @@ namespace detail
|
||||
};
|
||||
|
||||
template <precision P>
|
||||
struct compute_rand<2, uint8, P, tvec>
|
||||
struct compute_rand<2, uint8, P, vec>
|
||||
{
|
||||
GLM_FUNC_QUALIFIER static tvec2<uint8, P> call()
|
||||
{
|
||||
@@ -38,7 +38,7 @@ namespace detail
|
||||
};
|
||||
|
||||
template <precision P>
|
||||
struct compute_rand<3, uint8, P, tvec>
|
||||
struct compute_rand<3, uint8, P, vec>
|
||||
{
|
||||
GLM_FUNC_QUALIFIER static tvec3<uint8, P> call()
|
||||
{
|
||||
@@ -50,7 +50,7 @@ namespace detail
|
||||
};
|
||||
|
||||
template <precision P>
|
||||
struct compute_rand<4, uint8, P, tvec>
|
||||
struct compute_rand<4, uint8, P, vec>
|
||||
{
|
||||
GLM_FUNC_QUALIFIER static tvec4<uint8, P> call()
|
||||
{
|
||||
@@ -258,7 +258,7 @@ namespace detail
|
||||
template <typename genType>
|
||||
GLM_FUNC_QUALIFIER genType linearRand(genType Min, genType Max)
|
||||
{
|
||||
return detail::compute_linearRand<1, genType, highp, tvec>::call(
|
||||
return detail::compute_linearRand<1, genType, highp, vec>::call(
|
||||
tvec1<genType, highp>(Min),
|
||||
tvec1<genType, highp>(Max)).x;
|
||||
}
|
||||
|
||||
@@ -232,7 +232,7 @@ namespace detail
|
||||
template <typename genType>
|
||||
GLM_FUNC_QUALIFIER genType ceilPowerOfTwo(genType value)
|
||||
{
|
||||
return detail::compute_ceilPowerOfTwo<1, genType, defaultp, tvec, std::numeric_limits<genType>::is_signed>::call(tvec1<genType, defaultp>(value)).x;
|
||||
return detail::compute_ceilPowerOfTwo<1, genType, defaultp, vec, std::numeric_limits<genType>::is_signed>::call(tvec1<genType, defaultp>(value)).x;
|
||||
}
|
||||
|
||||
template <int D, typename T, precision P, template <int, typename, precision> class vecType>
|
||||
|
||||
Reference in New Issue
Block a user