|
IceShard 1
A personal game engine project, with development focused on 2D/2.5D games.
|
Go to the source code of this file.
Namespaces | |
| namespace | ice |
| SPDX-License-Identifier: MIT. | |
| namespace | ice::math_detail |
| namespace | ice::math |
Functions | |
| template<u32 Size, typename T, size_t... Values> | |
| constexpr auto | ice::math_detail::length2_sequenced (ice::math::vec< Size, T > vector, std::index_sequence< Values... >) noexcept -> T |
| template<u32 Size, typename T, size_t... Values> | |
| constexpr auto | ice::math_detail::length2_sequenced (T(&array)[Size], std::index_sequence< Values... >) noexcept -> T |
| template<u32 Size, typename T, typename U = T> | |
| constexpr auto | ice::math::add (vec< Size, T > left, vec< Size, U > right) noexcept -> vec< Size, T > |
| template<u32 Size, typename T, typename U = T> | |
| constexpr auto | ice::math::sub (vec< Size, T > left, vec< Size, U > right) noexcept -> vec< Size, T > |
| template<u32 Size, typename T, typename U = T> | |
| constexpr auto | ice::math::mul (vec< Size, T > left, U right) noexcept -> vec< Size, T > |
| template<u32 Size, typename T, typename U = T> | |
| constexpr auto | ice::math::div (vec< Size, T > left, U right) noexcept -> vec< Size, T > |
| template<u32 Size, typename T> | |
| constexpr auto | ice::math::length (vec< Size, T > left) noexcept -> T |
| template<u32 Size, typename T> | |
| constexpr auto | ice::math::length2 (vec< Size, T > left) noexcept -> T |
| constexpr auto | ice::math::cross (vec< 3, f32 > left, vec< 3, f32 > right) noexcept -> vec< 3, f32 > |
| constexpr auto | ice::math::dot (vec< 3, f32 > left, vec< 3, f32 > right) noexcept -> f32 |
| auto | ice::math::atan2 (vec< 2, f32 > point) noexcept -> rad |
| template<u32 Size, typename T> requires (Size > 1) | |
| auto | ice::math::normalize (vec< Size, T > value) noexcept -> vec< Size, T > |
| template<u32 Size, typename T, typename U = T> | |
| constexpr auto | ice::math::apply (vec< Size, T > left, U(*fn)(T) noexcept) noexcept -> vec< Size, U > |