Skip to content

Add procedural palette generation #4

@kosmickroma

Description

@kosmickroma

What

Generate color palettes algorithmically at runtime instead of only using the hand-crafted ones in PALETTES.

Why

117 palettes is great but procedural generation means infinite variety — every era could potentially get its own
unique palette that has never existed before.

Ideas to explore

  • Random hue rotation with locked saturation/brightness relationships
  • Complementary, triadic, or analogous color theory schemes
  • Perlin noise driven palette that slowly shifts hue over time
  • Palette seeded from the era's seed number so it's fully reproducible

Where to look

  • nca/params.pyPALETTES dict and sample_params() where palettes get picked
  • display/windows.pyapply_palette_heat() where palettes get applied
  • Generated palettes should return the same format as existing ones: a list of 4 RGB tuples

Notes

  • Should work alongside existing hand-crafted palettes, not replace them
  • Reproducibility matters — same seed should always produce same palette

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions