Skip to content

Feature Request: Support palettes in color picker outside recompiling source #3064

@Acissathar

Description

@Acissathar

Is your feature request related to a problem? Please describe.
The color picker palette in Stride is currently hardcoded in ColorPaletteViewModel.cs, making it impossible to customize without modifying engine source. This limits workflows that rely on specific palettes or shared team color sets.

Describe the solution you'd like
Add support for loading palettes from external files or project assets. The editor should allow users to import and switch between palettes. Unity’s Swatch Library system is a good reference:
https://docs.unity3d.com/Manual/SwatchLibraries.html

I think even just a more straight forward "single palette" loading / editor setting field would be enough too, just some way to modify the palette without having to recompile source.

Describe alternatives you've considered
Editing the hardcoded palette directly (not maintainable / annoying for multi-project workflow)

Storing palettes externally and copy/pasting colors (slow and potentially error‑prone)

Additional context

  • What are the use cases?

    • Shared team palettes
    • Project‑specific UI or art‑direction palettes
    • Pixel‑art or stylized workflows needing curated color sets
  • What kind of options or settings are expected or wanted?

    • At a minimum, the ability to specify a different palette than the hardcoded one.
  • Does the feature affect behavior in the editor?

    • Color picker displays the active palette instead of a fixed list
    • Simple UI control for selecting or loading palettes
  • Is there a component or data structure involved?

    • Depending on solution, will need a parser and format.
  • What kind of documentation is needed or needs to be updated?

    • Same as above, documentation would just need to be added for the supported file format.
    • Can look at gimp's GPL format which makes it easy to grab from lospec for example. I believe Krita supports this file format for importing palettes as well.

I don't mind taking a stab at the changes, but wanted to throw it out there first for any design considerations others may have too / what seems most useful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions