60 requires std::is_floating_point_v<T>
71 constexpr T Pi =
static_cast<T>(3.14159265358979323846264338327950288L);
101 return result.IsFinite() ? std::optional<Mat4<T>>(
result)
108 template <
typename T>
109 requires std::is_floating_point_v<T>
119 constexpr T Pi =
static_cast<T>(3.14159265358979323846264338327950288L);
145 return result.IsFinite() ? std::optional<Mat4<T>>(
result)
153 template <
typename T>
154 requires std::is_floating_point_v<T>
167 !std::isfinite(
left) || !std::isfinite(
right) ||
168 !std::isfinite(
bottom) || !std::isfinite(
top) ||
189 return result.IsFinite() ? std::optional<Mat4<T>>(
result)
constexpr T Value() const noexcept
constexpr T FarClipDepth(ClipDepth clipDepth, DepthDirection depthDirection) noexcept
constexpr T NearClipDepth(ClipDepth clipDepth, DepthDirection depthDirection) noexcept
std::optional< Mat4< T > > TryPerspectiveFov(Radians< T > verticalFieldOfView, T aspectRatio, T nearPlane, T farPlane, Handedness handedness, ClipDepth clipDepth, DepthDirection depthDirection) noexcept
std::optional< Mat4< T > > TryOrthographicOffCenter(T left, T right, T bottom, T top, T nearPlane, T farPlane, Handedness handedness, ClipDepth clipDepth, DepthDirection depthDirection) noexcept
std::optional< Mat4< T > > TryPerspectiveFovInfinite(Radians< T > verticalFieldOfView, T aspectRatio, T nearPlane, Handedness handedness, ClipDepth clipDepth, DepthDirection depthDirection) noexcept