Comments (10)
I thought color raw ranges are from 0 to FLOAT_MAX. Maybe someone tried to make raw colors easier to use.
from godot.
I thought color raw ranges are from 0 to FLOAT_MAX. Maybe someone tried to make raw colors easier to use.
Whenever I used raw mode in the past, it's been from 0 to 1. And as you can see in the video, the values are clearly expected to be in 0 - 1 range. Setting them with these new ranges gives very washed out results.
from godot.
There's a way to change slider properties so they slide from 0 to 1 and then you can enter any value.
from godot.
Well, this is wild. I just looked through the history of relevant files, and nothing seems to have changed recently that would affect the ranges. 4.2 also seems to have this identical behaviour. Perhaps they were always intended to be this way? i.e. you can set them to any value, but the raw value range that corresponds to 0 - 255 in the other modes is 0 - 1. So full white in raw mode is (1, 1, 1)
. But the slider ranges are 0 - 100 because... reasons? In any case, I guess this isn't really a bug, but a combination of bad memory and interesting UX.
from godot.
I'll love to hear a better setting for raw colours though.
You mentioned:
- Raw colours range from (0 - 1) not like (0 - 100)
- Raw colours can be set to any value.
from godot.
I'll love to hear a better setting for raw colours though.
You mentioned:
1. Raw colours range from (0 - 1) not like (0 - 100) 2. Raw colours can be set to any value.
The way I see it, there are three aspects to raw colors:
- The actual range: FLOAT_MIN - FLOAT_MAX
- The normal (non-HDR) range: 0 - 1
- The UX
The UX, ideally, should allow for setting to any value within the actual range, while simultaneously communicating the existence and/or relative placement of the normal range.
It's debatable what the ideal UX would look like. It could be anything from using fields instead of sliders, to having helpful labels, to disabling the sliders when a value is explicitly set.
But what I think is bad is the current approach, which:
- Fails to communicate either type of range (actual or normal)
- Introduces an arbitrary third range (0 - 100) which is meaningless to the actual user task
- Prevents the user from setting above 100, and prevents the user from setting negative values, both of which should be allowed (it's allowed in code, and is useful for many graphics tricks).
My personal take on a better UX for this would be:
- Make the sliders disabled, and only allow setting component values via the spinners / fields.
- Make the sliders still display using a range of 0 - 1, thus communicating the normal range.
- Optionally add indicators for when the values are set beyond the normal range.
from godot.
- Make the sliders read-only but still shown. The raw colour channel property is still editable.
- show the range of the slider as between 0 and 1 and indicate when exceeding.
@KoBeWi do we have anything in Godot Engine proposals or pull requests that can do this?
from godot.
Optionally add indicators for when the values are set beyond the normal range.
This exists:
The base color range is 0-1, but higher values are allowed to enable some effects like glow. It's even documented: https://docs.godotengine.org/en/stable/classes/class_colorpicker.html#enumerations
Make the sliders read-only but still shown.
idk what this would achieve.
do we have anything in Godot Engine proposals or pull requests that can do this?
There is #88072
from godot.
Optionally add indicators for when the values are set beyond the normal range.
This exists:
The base color range is 0-1, but higher values are allowed to enable some effects like glow. It's even documented: https://docs.godotengine.org/en/stable/classes/class_colorpicker.html#enumerations
Make the sliders read-only but still shown.
idk what this would achieve.
do we have anything in Godot Engine proposals or pull requests that can do this?
There is #88072
See my last post for all the rationale. I understand the base range, and the higher representational range. The issue here is with the 0 - 100 range.
The disabling of the sliders was really to simplify the implementation, because leaving a slider interactable while allowing out-of-range value representation is quite a complicated change from the current implementation. As I said, the ideal UX is definitely up for debate. But the current one is very misleading, and is not even feature-complete.
from godot.
There is #88072
Thanks for that link though! Will comment there. :)
I don't want this to get derailed into a proposal, because I didn't open this issue intending / prepared to do that. I already closed it.
from godot.
Related Issues (20)
- Older versions of SCons are no longer supported HOT 7
- Duplicate input events on TabContainer _gui_input() and _input()
- Godot 3.6 Beta 5 does not bake 3D models via merge_meshes HOT 1
- [4.3] Editor renders pixelated on macOS + external display HOT 2
- SSR and SSAO seem to stop working when transparent background is enabled. HOT 1
- ContextMenu `Copy Error` is off in `MSBuild` Panel
- Godot C# exports crash on launch if solution/project/assembly names don't match HOT 2
- [Source Generator] Unable to disable multiple source generators using `GodotDisabledSourceGenerators` property HOT 1
- 2D Runtime-Baked Navigation Mesh Not Working with Agent HOT 5
- Polygon is distorted in NavigationObstacle2D HOT 9
- Physics interpolation breaks GPUParticles2D movement HOT 2
- Changing name of script after using it in `preload()` generates "Could not resolve script" error, recoverable only by reloading project HOT 1
- [GDScript] Conflict between Variable Name and Type in Unresolvable Scope HOT 3
- AnimatedSprite2D default animation changes when I edit an animation HOT 2
- 4.3.dev - Problems with launching Godot/launching projects in a compositor with Xwayland disabled HOT 3
- Importing a jpg image may result in wrong colors. HOT 7
- Editor crashes while trying to generate docs for a GDExtension class HOT 3
- Fog Sky Affect Not Working in Compatibility Renderer HOT 1
- Godot 4.3 Pull Request 90601 broke addon compatibility and segfaults HOT 3
- GDScript `STANDALONE_EXPRESSION` warning should not apply for `preload` (due to static initializers) HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from godot.