Releases: Luadih/UNITE-light
R20240228
Project Structure
Change versioning scheme from SemVer to CalVer
Make UNITE a framework first and standalone lightroom second
Introduce Python for some functions impossible to do only with Xpresso
UNITE Framework
Interface
Implement translation support
The translations work by using individual .json files outside of the project that get loaded to a null "cache" that then gets used to translate every single interface element. For now, Spanish and English are the main languages supported, for contribution check the structure inside any of the .json files under "data/lang/"
Implement some way to show credits
For now, some very basic credits are there, but I hope they will expand soon enough!
Show a note if GI and/or AO is recommended for the current light selected
If "Adjust Render Settings Automatically" is disabled, when selecting a light that recommends GI and/or AO, a note will appear below the lights selector saying that it recommends one or both
Functions/Usage
Add controls for refraction and alpha visibility regarding panels and HDRI's
You can now control if the panels and HDRI's are visible through refractions or alpha materials (named as transparency in the controls), by defaut this is set to "Refraction Only"
Add an advanced option to control the personal HDRI with UNITE
For now it just uses the custom mix controls, but I don't discard the idea of adding more to this
Add an HDRI Mix "mode" to support more setups other than standard "Luminance != 100%"
Basically added "HDRI Mix Mode" to Advanced options, which controls what the HDRI Brightness changes, if it changes the Brightness value in the Color channel, Luminance channel or Both. This was initially added to support newer versions of the JuanFX Lightroom which changed the Brightness value on the Color channel instead of the Luminance channel
Smaller changes
- Deprecate lights "Random Seed" since its maintenance would increase complexity too much
Python Specific Functions
Implement a way to adjust render settings automatically
This is disabled by default, but what it does is it enables or disables GI and/or AO if they are currently in the render settings, depending on the lights selected, incredibly helpful for quick use of presets to prevent user mistake
Add a control which can override the rendering of shadows in the project
This disables/enables shadows in the render settings, useful for presets/setups that may not want any shadows. Currently this ignores "Adjust Render Settings Automatically" (ARSA for short), but it would be good to make it override the shadows only if ARSA is also enabled
Infrastructure
Replace the old modules system with an iteration system which is more scalable and maintanable
"Modules" was the old way to link the interface to the setups and needed to be done in a setup by setup basis. This system was too time consuming so it was replaced by a simpler system which connects the setups to the interface once, while most of its complexity is found in adding the lights that should be affected by the reflection selection to a list
Rework HDRI switch system to not use one material for every single HDRI
Previously HDRI's where switched by using a single material and switching the opacity of layers in a layer shader inside the material, this is now changed to a material per HDRI system in which, if you want to set a default brightness, you have to do so by setting the brightness inside the diffusion channel to the desired value.
Separate presets from the preset loading Xpresso tag
Presets are now driven by nulls with data outside of the Xpresso tag instead of all the data needing to be constructed inside of it
Smaller changes
- Clean up framework structure to be more self explanatory and cohesive
- Improve layer structure to hold more specific objects
- Added notes to Xpresso tags to hopefully document better how they work
- Make HDRI Preview only load while the HDRI is actually being used
- Fix being able to select a preset while Preset Mode is turned off
Development Utilities
Implement developer utilities and for that a developer menu
While it could be hidden better, it would be easy to circumvent it, so its better to leave it like it is currently
Implemented 5 developer utilities
- Build Interface : Links all of the elements inside their respective null group, to the controls of the interface
- Update Version Number : Updates the version identifier
- Cache Languages : Caches all of the language .json files into a single dictionary, and loads the language options to its respective controller
- Cache Credits : Caches the credits.json file used to populate the null object created by the "Show Credits" button
- Build ID Dictionary : Caches the ID of every single user data in UNITE to provide direct access to its container to other scripts
Add memory for every element (also known as the debug showcase)
UNITE Light
Setups
Introduced 4 new setups/presets
- BIT Deluxe : An import of the BIT Lightroom's Contrast setup, slightly improved panel wise and with an added HDRI
- Ultimate Basics : An import of the iconic David. F's Ultimate Lights, mostly not touched aside from some slight tweaks
- Direct Point : An import of Ricky Bustillos's Glowroom, calibrated to match the other setups and to add for the old Brazilian look
- Nikko : An all new test to make a consistent slightly plain look with some highlights up and down!
Updated "JuanFX" setup to the 2023 version
Smaller changes
- "Parallel" setup renamed to "CORE"
- Calibrated light values for "CORE"