IceShard 1
A personal game engine project, with development focused on 2D/2.5D games.
Loading...
Searching...
No Matches
color_details.hxx File Reference
#include <ice/base.hxx>
#include <ice/math.hxx>
#include <ice/math/algorithm.hxx>
#include <ice/detail/color_enums.hxx>
#include <ice/profiler.hxx>
#include <array>

Go to the source code of this file.

Classes

struct  ice::detail::OkLCH_HueCusp
 Holds information where the 'lightness' and 'chroma' are at the highest point of the OkLCH color curve. More...

Namespaces

namespace  ice
 Root namespace for all APIs part of the IceShard engine project.
namespace  ice::detail

Functions

constexpr auto ice::detail::linear_to_srgb (ice::f32 x) noexcept -> ice::f32
constexpr auto ice::detail::srgb_to_linear (ice::f32 x) noexcept -> ice::f32
constexpr auto ice::detail::from_oklab_to_lrgb (ice::math::vec3f from) noexcept -> ice::math::vec3f
 from: https://bottosson.github.io/posts/oklab/
constexpr auto ice::detail::compute_max_saturation (ice::f32 a, ice::f32 b) noexcept -> ice::f32
 Compute max saturation for sRGB.
constexpr auto ice::detail::find_cusp (ice::f32 a, ice::f32 b) noexcept -> ice::detail::OkLCH_HueCusp
 Finds L_cusp and C_cusp for a given 'a' and 'b' values of OKLAB color.
constexpr auto ice::detail::find_cusp_ch (ice::f32 chroma, ice::rad hue) noexcept -> ice::detail::OkLCH_HueCusp
 Finds L_cusp and C_cusp for a given 'a' and 'b' values of OKLAB color.
constexpr auto ice::detail::find_gamut_intersection (ice::detail::OkLCH_HueCusp cusp, ice::f32 L1, ice::f32 C1, ice::f32 L0) noexcept -> ice::f32