Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Preset load/save system #12

Open
2 tasks done
Luadih opened this issue Jan 1, 2024 · 2 comments
Open
2 tasks done

Preset load/save system #12

Luadih opened this issue Jan 1, 2024 · 2 comments
Labels
area:development Affects the ease of improvement to UNITE area:infra Affects background interaction inside UNITE type:enhancement New feature or request

Comments

@Luadih
Copy link
Owner

Luadih commented Jan 1, 2024

Description

A preset load/save system which could be implemented by creating a null with all the settings in it

Acknowledgments

  • I have written a concise and meaningful title.
  • I have searched the existing issues and this new issue is not a duplicate of any.
@Luadih Luadih added type:enhancement New feature or request area:infra Affects background interaction inside UNITE area:development Affects the ease of improvement to UNITE labels Jan 1, 2024
@Luadih
Copy link
Owner Author

Luadih commented Jan 1, 2024

Note to self: This could actually speed up the preset creation system too.

Edit: I actually meant preset in the current preset way, that it just applies the settings to UNITE, the proposed change at the time was to export and import outside of UNITE

@Luadih
Copy link
Owner Author

Luadih commented Jun 1, 2024

To make presets work in a sharable way and make them really compatible what could be done is:

Overview

  1. Make presets save the data as a dictionary (can be json, though it would be better if it isn't), in case of a variable integer value like lights, panels and hdri's, save the name.
  2. Improve the modules system by creating a single null representing the pack/module, also save the version in it, to be able to export them into the presets and make them detect when an older version or the current version is already in UNITE.

In steps

  • Add versioning to modules
  • Make importing a module into UNITE create a metadata null naming its contents and version
  • Add a prefix to the elements that need it (lights & panels), at import time
  • Show modules imported in a list (This is optional for now, but would be good QOL)
  • Create import and export system for presets using dictionaries and include modules used in presets

Also job for later but in part is related to this: Add a null with a "key" to module and preset containers to only try to import to UNITE things that are valid to the current version.

(I may be forgetting something since, I only thought about this whole process in the morning and decided I should write it some time after)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:development Affects the ease of improvement to UNITE area:infra Affects background interaction inside UNITE type:enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant