[HN Gopher] Chroma, Ubisoft's internal tool used to simulate col...
___________________________________________________________________
Chroma, Ubisoft's internal tool used to simulate color-blindness,
open sourced
Author : gm678
Score : 172 points
Date : 2025-04-15 13:04 UTC (9 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| gjsman-1000 wrote:
| They aren't using GitHub correctly, so they have the installer
| for Windows in-tree.
|
| https://github.com/ubisoft/Chroma/blob/main/Release/Chroma_s...
| tgv wrote:
| This might be to placate the "where's the .exe?" crowd. A
| release and a hint where to find the .exe might have been more
| appropriate, but I doubt they will use this repo for
| development: there is no sign of branches, tags or other
| contributors.
| OneDeuxTriSeiGo wrote:
| Or rather they probably just dumped the project to a fresh
| git repo since their internal tooling probably handles
| binblob diffing in VCS.
| tester756 wrote:
| You're too pedantic, there are valid reasons to do so
| perching_aix wrote:
| What would be those? Serious question, not picking a fight.
| onli wrote:
| There is not really a big disadvantage, is there? It keeps
| the .exe around in all possible versions without additional
| effort, even if external build dependencies were to fall
| away etc. Sure, nothing proper releases can't mostly
| achieve as well. But also not something bad.
|
| It's a little bit like when projects include their
| dependencies instead of just listing them in a gemfile etc.
| Some hate that, but it can make things easier.
| perching_aix wrote:
| Size comes to mind, and of course the policy of not
| having any blobs in a source repository for security
| reasons.
| adzm wrote:
| I've done this when we had existing scripts that were run
| after cloning a specific git repo, that then needed an .exe
| for reasons, and just adding the exe to the repo was the
| easiest solution so we didn't have to change all the
| existing tooling and processes.
| paxys wrote:
| They are using Git correctly.
| w4rh4wk5 wrote:
| Alternatively, one could just use this shader for post-processing
| in their engine: https://www.shadertoy.com/view/XdtyzM
| cwillu wrote:
| That's funny, the shader doesn't appear to be doing anything...
| meesles wrote:
| Second key feature listed in the repo:
|
| > Work on all games. No dependency on any specific game or
| engine.
|
| So your solution isn't an alternative here since it requires
| modifying the engine/game code.
| c-hendricks wrote:
| With something like Reshade shaders can be injected into any
| game without modifying any engine / game code. Would work
| much like this tool from Ubisoft.
| w4rh4wk5 wrote:
| But what does that give me? Why would I need to simulate
| color blindness in an already released title? In my opinion
| that's simply a developer tool.
|
| What would've been more useful here would be a color
| blindness compensation filter, but IIRC there are already
| tools that can do just that for the whole screen.
| Timon3 wrote:
| Simple example: you want to develop a game and are looking
| for example implementations of specific mechanics or UI
| elements. You go through existing titles, and exclude those
| that use implementations that don't work well for
| colorblind people.
|
| It's not hard to come up with more examples.
| Thaxll wrote:
| Ubisoft is on the forefront for accessibility.
| wincy wrote:
| The advantage of these large corporations is good stuff like
| this that a smaller company couldn't afford. Like how Disney
| World is in bending over backward to be accessible for my
| daughter in a wheelchair. This sort of thing is an objective
| good.
|
| The problem with their games is in being such big tent trying
| to appeal to everyone (note I'm not talking about
| accessibility, which is a totally different axis), they feel
| too smoothed out and have very little interesting to say, and
| their games just aren't that much fun.
|
| It reminds me of that article posted on HN the other day saying
| that often our weaknesses and strengths are two sides of the
| same coin.
| gambiting wrote:
| Ubisoft is a huge corporation(I used to work there) - there
| are projects which are money makers and which have to be
| smoothed out and appeal to the largest possible group of
| people, but there is still a crazy amount of creativity
| happening in various corners of the company. For every
| Assassin's Creed there are 10 projects being worked on out of
| which maybe 1 will actually come out - generally if you can
| pitch an idea within your studio there is a good chance you
| will get internal funding for 6-12 months to work on it with
| a small group of other people. Passing other milestones on
| the way to release is much harder, but this kind of "work on
| anything and see if it works" approach is very much
| encouraged. OddBallers and RollerChampions being probably
| some of the better examples lately, and Grow Home much
| earlier.
| kjkjadksj wrote:
| With the popularity of indie games I wonder why publishers
| don't just try and buy out hundreds of these small devs under
| their shop. And I'm not talking like how when ea buys dice
| and ruins dice. That is the whole problem. Total autonomy
| should be offered. The publisher should exist solely as a
| balancer of budgets: skim profit when sales happen to pay for
| shops when dev work before a sale is to be done. No different
| than say a city department paying into the general fund and
| other department supported by the general fund.
| SXX wrote:
| Publishers that want to work with indie studios are already
| accepting 100s of pitches and choose 0.1% they like. If a
| big publisher will buy a lot of small indie studios you'll
| soon see titles in a press like "{PUBLISHERNAME} force
| developers to live on ramen and work 12 / 6".
|
| Simply because working on very tight budget likely 12/6 is
| how indie games are made. And to be honest in modern
| economy having any budget at all is kind a success already.
| So I'd belive most of small games are built on enthusiasm
| and founders own money.
|
| Vast majority of "indie" games budgets are in range of
| $100,000 and $300,000 total. Over that amount there is gap
| where no one invest except few rich, successful and picky
| publishers. Getting more funding for a small-scale project
| is extremely hard so if your game needs more then it's must
| be AA project for at least $2,000,000+ budget. But AA+
| means $40+ price tag, completely different production
| quality and large team so very few kind of games fit the
| math.
|
| PS: I co-founder of a small gamedev studio and I know quite
| a few other people in this industry.
|
| PSS: I'm happy to be wrong though. So if you know how to
| get game funded I have 4 cool playable prototypes to build
| into a game, team of 10+ devs and we track record for 3
| released titles including one for consoles.
| teamonkey wrote:
| The short answer is that for a company like Ubisoft or EA,
| big blockbusters are much more reliable and more profitable
| than indie games. Not that smaller games can't do amazingly
| well, but most don't make a profit, and the risk doesn't
| justify the expenditure for that kind of company.
|
| Also, like another poster mentioned, there already exists a
| host of creativity in these AAA companies, that's not the
| problem. The problem is making something that will reliably
| keep the company in the black.
| ryandrake wrote:
| Accessibility typically doesn't cost much. With many modern
| OS UI frameworks, you get it for free _as long as you don 't
| go out of your way to customize shit that you probably
| shouldn't be customizing in the first place_. If you stick to
| standard controls and not try to use crazy ways to override
| user preferences, your application should be accessible to
| things like screen readers mostly out of the box.
| Etheryte wrote:
| As with most things, this is an issue of education and
| awareness. It's not that most developers intentionally
| break accessibility, but rather that a very large number of
| developers simply don't even know it's an issue, let alone
| something that they should keep in mind.
| GuB-42 wrote:
| "customizing shit that you probably shouldn't be
| customizing" is kind of a standard in video games.
|
| Video games are not meant do be productive, they are meant
| to be fun, and standardization is boring. It means that
| they can't completely rely on OS frameworks to make an
| appealing game, it means that accessibility needs first
| hand consideration.
| AdmiralAsshat wrote:
| Glad they're open-sourcing it, since "Accessibility" falls
| under the umbrella of the dreaded "DEI", which means we can
| expect to see any government-funding for it dry up.
| natebc wrote:
| Luckily Ubisoft is (mostly) European so it should avoid the
| events in the US. I'm sure the the anti-progressives will
| eventually start making headway in Europe but so far the
| Continent at least seems to have stayed sane. I could be
| wrong about this but i don't _think_ I 've seen the slept
| agenda being pushed anywhere other than the U.K.
| darkwater wrote:
| > I've seen the slept agenda
|
| "Slept" as the opposite of "woke", right? This is genius!
| Is something actually used by more people?
| brookst wrote:
| Well, one more as of now
| rafaelmn wrote:
| >Hungary passes constitutional amendment to ban LGBTQ+
| gatherings
|
| Just the first one that comes to mind.
| BrandoElFollito wrote:
| The Hungarian government is insane. The Polish ones used
| to be as well but after the elections it is normal again.
| There is also Ireland with their abortion laws that are
| backwards.
|
| Other than that we are sane, Hungary+Ireland is not that
| much
| miki123211 wrote:
| (continental) Europe never really had much of a push in
| that direction, though.
|
| The whole concept of DEI / woke is not much of a thing
| outside the English-speaking world. Very small parts of it
| (gender parities, a bit more transgender awareness, the
| "transgender athletes in sports" kerfuffle) have leaked
| through, but that's it. Where I live (Poland), most people,
| even well-educated people, haven't ever heard of the
| concept of specifying your pronouns.
| nottorp wrote:
| That's good, but it's sad that it's the only good thing that
| can be said about them...
| natebc wrote:
| Microsoft is well up there too.
| bmcahren wrote:
| I'm pro-accessibility and have contributed privately to blind
| developer initiatives. Unfortunately Ubisoft insists on
| implement user-hostile accessibility that screams at the user
| using voice-to-text when they open their games and is quite
| difficult to get through even as an abled user.
|
| How about Ubisoft work with Sony/Microsoft/Valve and get vision
| and hearing disability implemented at the device level rather
| than harassing abled users every new game which I'm sure
| through this frustration is contributing in some small way to
| these anti-intellectual movements against accessibility.
| charcircuit wrote:
| This seems overly complex. Why require input passthrough?
|
| It seems simpler to make an OBS plugin that way you are able to
| reuse a lot of work that already exists for game capture and post
| processing.
| 6SixTy wrote:
| I would assume that most of the code is the way it is because
| "helping users flag accessibility concerns in real-time" in the
| about implies that they are play testing games using Chroma on
| top. Using OBS for this would require insane bitrate and tight
| latency restraints that do not sound very achievable.
|
| Also, at no point does it look like they are actually recording
| anything. Just screenshots.
| charcircuit wrote:
| I never mentioned recording or streaming. You can have OBS
| preview a scene with filters. Plenty of streamers have played
| games via an OBS preview.
| maxnoe wrote:
| Not for gaming, but this was developed for checking plots:
| https://github.com/hdembinski/monolens
|
| And works cross platform.
| fidotron wrote:
| Does anyone have any insight into how tools for simulating color
| blindness would fit into workflows?
|
| For example, in this case presumably the QA team play in
| different modes and provide feedback about things which aren't
| going to work, but that is a very different universe than web or
| mobile app design.
| nemomarx wrote:
| could you use it during user validation testing? see if they
| can distinguish buttons etc?
| AlotOfReading wrote:
| Most colorblind people are so-called "anamolous trichromats"
| who have 3 functioning color channels, but one or more has
| some kind of deficiency. Instead of being completely unable
| to distinguish UI elements, they might simply take longer at
| it, or more likely to spend 10 extra minutes hunting for the
| red key the boss dropped in the grass.
|
| That's more subtle to test.
| bongodongobob wrote:
| Yep, exactly. I know cardinals are red and they look
| obviously red to me. Hard as hell for me to spot one in a
| tree though, this was the first sign when I was a kid.
| "What do you mean you can't see it!?"
| brookst wrote:
| I still remember by my surprise somewhere around age 15
| when I learned that other people could tell a dead tree
| from a live one just be color.
| david-gpu wrote:
| _> I know cardinals are red and they look obviously red
| to me. Hard as hell for me to spot one in a tree though_
|
| Does it mean that trees also look reddish to you?
|
| I don't understand how cardinals can look "obviously red"
| and still blend in with the foliage, which average people
| would consider "obviously green". My mental model for
| red-green color blindness is that most reds and most
| greens are hard to tell apart because they largely look
| like shades of yellow.
| bobthepanda wrote:
| At least for me (I am red green colorblind), I have the
| mental model to help me know culturally what is "red" (an
| apple) and what is "green" (a pine tree) but I start
| having issues the moment red and green start appearing
| _next_ to each other in which case they just look like
| muddy different shades if I squint very hard.
|
| It is hard to explain because much of our modern signage
| and whatnot has been designed with colorblindness in
| mind; most "green" traffic lights, for example, are
| green-whitish specifically to address colorblindness. But
| not all of it; when I used to work in IT (as in literal
| computer diagnostics) it was pretty impossible for me to
| ascertain any particular diagnostic light.
| refulgentis wrote:
| I've done work that, for better or worse, required
| creating a color space.
|
| It to enable dynamically generated UI palettes that
| _also_ were numerically verifiable as accessible.
|
| The way I model color blindness for a quick & cheap
| heuristic is, remove all hue-ness and saturation-ness.
| i.e. make the scene black and white.
|
| That elides the exact compression in hue that is
| experienced by an actual individual (i.e. is it _just_
| red on green that 's a problem? tetrachromate or x or y
| or z? at what severity (this is ~unmeasurable)) and
| leaves you with the raw problem, that there isn't
| sufficient contrast between the two colors.
|
| Even though this elides information about the
| individual's exact experience, it is crucial for how to
| think about color, because _even if color blindness didn
| 't exist, it still would affect all of us_
|
| A cheap example of that is #FF0 text on a white
| background. Yellow is absurdly close to white (IIRC 97 L*
| versus 100 L*), so you can never quite focus on the
| yellow, it feels like its slippery and you get a headache
| trying to read.
|
| (w/the tree x cardinal example, red is ~43? L*. A natural
| green w/o an absurd sunlight behind it would be somewhere
| around 55 L*. You want about 40 L* for good contrast,
| here we have ~10 L*, and once you lose the hue/saturation
| delta due to color blindness, it's quite difficult for
| the bird to "jump out", as it were. you could still find
| it scanning)
| AlotOfReading wrote:
| Brains are complicated. Speaking about the more common
| deutan trichromancy (protan has a characteristic dimming
| of reds such that "same luminance" colors are visually
| different brightnesses), for me red and green are still
| separate and distinguishable parts of the spectrum, both
| again separate from the yellows and oranges. What happens
| is that red is not "visually obvious", in the sense that
| the sense that I register it subconsciously.
|
| Here's an example photo I took in a tulip field with
| spots of emerging red flowers in a sea of green:
| https://i.imgur.com/44VRERI.jpeg
|
| I can see the flowers if I look at them, but if I hold
| the picture in my peripheral vision away from my focal
| center, I don't register the spots of red in the back of
| the field.
|
| What tends to happen with anamolous trichromats is that
| the brain compensates in a bunch of different ways.
| Lightness contrast sensitivity goes up, color contrast
| sensitivity goes up, and your brain "alters" the
| perceived colors closer to what a color normal person
| would perceive. The brain is _mostly_ able to compensate
| for the reduced functionality to the point where you
| might not even know you 're colorblind until you do color
| matching tests. This doesn't fix everything though, and
| this happens to be a common weakness for deutans.
| Pet_Ant wrote:
| I have used Chromatic Vision Simulator on my iPhone with a camera
| to check for colour-blind accessibility of board games.
|
| https://apps.apple.com/us/app/chromatic-vision-simulator/id3...
|
| It's free. I'm unaffiliated, just a happy user in the past.
| ano-ther wrote:
| Does anyone know a tool that assessed which type of
| colorblindness you have? The tool here seems great, but when I
| want to explain to people how I see colors, I don't know which
| deficiency to choose.
___________________________________________________________________
(page generated 2025-04-15 23:00 UTC)