poveden / EliteChroma

A tool to make Razer Chroma devices react to Elite:Dangerous in-game events
MIT License
42 stars 15 forks source link

Add Ambient Awareness #96

Open poveden opened 3 years ago

poveden commented 3 years ago

Summary

Razer Synapse's Chroma Studio includes an Ambient Awareness effect, which applies the colors on certain parts of the screen to Chroma-connected devices. Since only a single application can control coloring (#78), Synapse's Ambient Awareness cannot be applied while EliteChroma is running.

Desired solution

Partially emulate Synapse's Ambient Awareness effect on EliteChroma. This would make sense only when the ship/vehicle's cockpit is being shown, of course.

Additional Context

fudoido commented 3 years ago

opinion. In order to make this feature a bit more effective, due my experience using the "Ambient Awareness" from synapse, it would have to capture a small area of the screen right on the cockpit, but without capturing any part of the ship/buggy HUD. that way, it would go dark when the cockpit gets with dark, and light up when any light source hits the cockpit (like a star, or entering the stations). Due the nature of the game and the constant movement of the cockpit, i am not sure this can be done correctly, also due the fact that when looking into the side panels, the view might cause that capture zone to capture the panels colors and provide a strange reaction to the player. Selecting a zone in the field of view outside the cockpit could also be an option, but then any ship or planet or whatever comes into that field of view will get captured and software would reproduce the color that is being seen, meaning that even if you are in pitch black space, a ship coming across in front might trigger the lights to go full bright all suddenly, and create a unexpected reaction to the player that can cause a bad gameplay for them. however, not sure if this can be implemented as a synapse addon, but would be a great addition if it was possible. me personally, while using the ambient awareness feature, decided to split my keyboard into 4 areas, 4 key columns to right reacting to right edge of screen, 4 columns left for left screen edge, 2 top rows for top screen edge, 2 bottom rown for bottom screen edge, the remaining keys at center are reacting to a small area in the center of the screen, where the aiming reticle is. then i have my case leds and fans reacting to an area of the screen where the warnings pop-up, so if ship is getting scanned, or gets too hot and a message shows in that zone, my lights will turn red and provide a bigger visual feed. at last, my yeelight rgb bulb is conected to a section of the screen where the supercruise/jump loading shows, and light will increase brightness and change colors as the bar fills up for the supercruise/jump. keyboard areas match the screen as much as they can, even the full row or colums selecting the screen edges actually have different colors as per border section. what i mean with this is, the left screen edge for example, 3 columns of keys on left side of keyboard linked to that area, if the screen edge has on top one color, middle another color and bottom yet another, keyboard tries to reflect that also, making the key rows also light up as captured on screen, with top of row with color A, center of row with color B and bottom with color C, same happening to top and bottom edges, meaning that its not a single color for the entire rows (or collumns) like it was the "most common" color in the screen edge). Case strips and fans, and yeelight, when not having the warnings, they are still capturing whatever color is more prominent in that selected screen zone, so if what the zone captures is black space, my leds just turn off, with the occasional "blink" of passing stars. Talking about passing stars, keyboard, ram, onboard leds, strips and fans (using an msi motherboard, directly compatible with razer synapse from manufacturer) go bonkers when doing a jump, the lightshow is just out of this world :P