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
 SPDX-License-Identifier: MIT.
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