← Todos os pacotes

OKLab Color Inspector Pro

Cor perceptual para Unity, baseada no espaço de cor OKLab de Bjorn Ottosson. Sem pontos médios turvos, sem mudança de matiz ao escurecer, passos de brilho uniformes. A mesma ciência de cor por trás do CSS Color Level 4 e Figma.

v1.2.0 Unity 2021.3+ No dependencies namespace: DawgTools.OKLab

Início rápido

Uma instrução using, zero configuração. Funciona em qualquer pipeline de renderização.

using DawgTools.OKLab;
using UnityEngine;

// Perceptually uniform lerp (no muddy midpoints)
Color midpoint = OKLabColor.LerpOKLab(Color.red, Color.green, 0.5f);

// Darken without hue shift
Color darker = OKLabColor.AdjustLightness(myColor, -0.15f);

// WCAG contrast check
float ratio = OKLabColor.WcagContrastRatio(textColor, bgColor);
bool passesAA = ratio >= 4.5f;

// Auto-pick readable text color
Color text = OKLabColor.BestTextColor(backgroundColor);

// Generate palette from one accent color
Color[] harmony = OKLabPalette.GenerateHarmony(accent, HarmonyMode.Triadic);

Por que OKLab em vez de HSV/HSL?

Espaços de cor padrão mentem sobre uniformidade perceptual. OKLab não.

ProblemaHSV/HSLOKLab
Escurecer azul muda para roxoYesNo
Amarelo e azul no mesmo L parecem igualmente brilhantesYesNo
Lerp de vermelho para verde produz marrom turvoYesNo
50% de luminosidade varia muito por matizYesNo

API Principal - OKLabColor

Classe estática. Todos os métodos são funções puras sem efeitos colaterais.

Conversão de espaço de cor

MétodoDescrição
RGBToOKLab(Color)Converter RGB para OKLab (L, a, b)
OKLabToRGB(L, a, b)Converter OKLab para RGB
OKLabToRGBSafe(L, a, b)Converter com clamping de gamut (mantém em sRGB)

Interpolação

MétodoDescrição
LerpOKLab(Color a, Color b, float t)Interpolação perceptualmente uniforme
LerpLinearRGB(Color a, Color b, float t)Interpolação RGB de luz linear

Ajustes

MétodoDescrição
AdjustLightness(Color, float delta)Alterar luminosidade, preservar matiz
AdjustChroma(Color, float delta)Alterar saturação, preservar matiz e luminosidade
GetLightness(Color)Obter luminosidade OKLab (0-1)
GetChroma(Color)Obter croma OKLab
GetHue(Color)Obter ângulo de matiz (0-360)

Acessibilidade

MétodoDescrição
WcagContrastRatio(Color fg, Color bg)Razão de contraste de luminância WCAG 2.1
WcagRelativeLuminance(Color)Luminância relativa por spec WCAG
BestTextColor(Color bg)Retorna preto ou branco para melhor legibilidade
PerceptualDelta(Color a, Color b)Distância perceptual (delta E em OKLab)
EnsureMinDelta(Color, Color, float)Busca binária para garantir separação mínima

API de Paleta - OKLabPalette

Construa harmonias, rampas e temas UI completos a partir de uma única cor de destaque.

Geração de harmonia

ModoCoresDescrição
Complementary2Oposto na roda de matiz (180 graus)
Triadic3Três matizes igualmente espaçados (120 graus)
Analogous3Matizes adjacentes (30 graus)
Split-Complementary3Complementar dividido em dois (150 e 210 graus)
Tetradic4Dois pares complementares (90 graus)

Geração de rampa

MétodoDescrição
GenerateRamp(Color a, Color b, steps, BlendConstraint)Mesclar entre cores com restrição (Free, ConstantHue, ConstantChroma, ConstantLightness)
GenerateLightnessRamp(Color, steps)Rampa escuro-para-claro em matiz e croma constantes
HueRotate(Color, float degrees)Rotacionar matiz com luminosidade e croma constantes

Ferramentas do editor

Color Inspector

Window > DAWG Tools > OKLab Color Inspector
Comparação lado a lado de Gamma RGB vs Linear RGB vs OKLab lerp. Fatia interativa com clique/arraste. Modos Lock Lightness e Lock Chroma. Indicadores de clipping de gamut, exibição de contraste WCAG, métricas de delta perceptual.

Palette Builder

Window > DAWG Tools > OKLab Palette Builder
Controles OKLCH com entrada hex e avisos de gamut. Aba Build (manual), aba Generate (harmony/ramp/UI theme), Ship tab (WCAG validation matrix, distance warnings). Export to .hex, .gpl, C# snippet, or ScriptableObject.

Geração de tema UI com um clique

Insira uma única cor de destaque e obtenha um tema UI completo de 10 cores com fundos, superfícies, texto, bordas e variantes de destaque. Gera automaticamente variantes claras e escuras. O auto-fix WCAG ajusta as cores via busca binária para atender os requisitos de contraste AA.

Instalação

// Unity Package Manager > Add package from disk
// Navigate to package.json and select it

// Then import the demo scene:
// Package Manager > OKLab Color Inspector PRO > Samples > Import

Requires Unity 2021.3 LTS or newer. Sem dependências externas. Works with Built-in, URP, and HDRP render pipelines.