jellyfish-rs

💫Add reactive lighting via NeoPixels to your gaming set-up, at no performance cost.

MIT License

Stars
1
Committers
2
jellyfish-rs - v2.0.0 - 🎊GUI Update!🎊 Latest Release

Published by porplax 4 months ago

gui

🪼new release!🪼

This update marks a really big release! I've finally finished programming the GUI, and threading. It is very efficient, easy to use, and has persistence. It doesn't take much CPU resources in the background from my experience.

📃completed additions since v1.5.0📃

  • Implemented GUI with egui (7c1917e)
  • Added persistence. The application saves settings after exit. (cf96a2b)
  • Organized file structure. (3aefe2d)

❗known issues❗

  • There are none at the moment! Please report a bug by making an issue.

Pull Request

SmartScreen will mistake the application for malware. If it does, click "run anyway"

Full Changelog: https://github.com/porplax/jellyfish-rs/compare/v1.5.0...v2.0.0

jellyfish-rs - v2.0.0-alpha.2

Published by porplax 4 months ago

‼️alpha release‼️

  • Implemented persistence, your settings will save to config.json on application exit.

SmartScreen will mistake the application for malware. If it does, click "run anyway"

jellyfish-rs - v2.0.0-alpha.1

Published by porplax 4 months ago

‼️alpha release‼️

  • Implemented stop function.

SmartScreen will mistake the application for malware. If it does, click "run anyway"

Full Changelog: https://github.com/porplax/jellyfish-rs/compare/v1.4.1...v2.0.0-alpha.1

jellyfish-rs - v2.0.0-alpha

Published by porplax 4 months ago

‼️alpha release‼️

This release brings new GUI and removes CLI. It is not completely refined yet and it has some bugs I got to iron out as soon as possible.

SmartScreen will mistake the application for malware. If it does, click "run anyway"

Full Changelog: https://github.com/porplax/jellyfish-rs/compare/v1.4.1...v2.0.0

jellyfish-rs - v1.5.0

Published by porplax 4 months ago

📃completed additions since v1.4.0📃

  • New --slient-mode option, useful for people who just wants CLI to shut up. (4ac911c)
  • --saturation now scales from 0.0..1.0 instead of from 0..100 (f3f5347)

❗known issues❗

  • there are no known issues in this release!!!🎊🎊🎊

Full Changelog: https://github.com/porplax/jellyfish-rs/compare/v1.4.1...v1.5.0

jellyfish-rs - v1.4.1

Published by porplax 4 months ago

what have changed❓

These crates have been updated.

  • neobridge-rust 0.1.6 -> 0.1.8 (c86410e)

Here are notable changes.

  • Fixed flickering LED issue. (c86410e)

Full Changelog: https://github.com/porplax/jellyfish-rs/compare/v1.4.0...v1.4.1

jellyfish-rs - v1.4.0

Published by porplax 4 months ago

🪼new release!🪼

New color option! I've finally added saturation as an option so now you can make colors pop out more!

📃completed additions since v1.3.0📃

  • Optimized saturation function by <70%, color calculation by 35% (ff68294)
  • Added --saturation option and function (0fbf042)

❗known issues❗

  • If a pixel is too dark in a column, LEDs will flicker.

Full Changelog: https://github.com/porplax/jellyfish-rs/compare/v1.3.0...v1.4.0

jellyfish-rs - v1.3.0

Published by porplax 4 months ago

🪼new release!🪼

Hi guys! With this release, I've made new changes and additions such as brightness!

📃completed additions since v1.2.0📃

  • Added terminal printing. (95aba1f)
  • Implemented --brightness <BRIGHTNESS>, changes brightness of the LED strip. Brightness must be anywhere from 0.0 to 1.0 (95aba1f)
  • Added --no-warnings, removes warnings from terminal (95aba1f)
  • Added ---disable-color-operations, disables color operations such as --brightness (95aba1f)

❗known issues❗

  • There are no known issues in this version!🎊🎊🎊

Full Changelog: https://github.com/porplax/jellyfish-rs/compare/v1.2.3...v1.3.0

jellyfish-rs - v1.2.3

Published by porplax 4 months ago

what have changed❓

These crates have been replaced/removed.

  • xcap -> screenshots
  • image -> screenshots::image

Here are notable changes.

  • Changed image capture method: capture() to capture_area(). Instead of capturing the entire screen, only capture a portion which will be used for processing. This grants an incredible 60% performance increase! (b8fbeef)

Full Changelog: https://github.com/porplax/jellyfish-rs/compare/v1.2.2...v1.2.3

jellyfish-rs - v1.2.2

Published by porplax 4 months ago

what have changed❓

These crates have been updated.

  • neobridge-rust 0.1.5 -> 0.1.6 (7c9c8a5)

Fixed trailing comma.

Full Changelog: https://github.com/porplax/jellyfish-rs/compare/v1.2.1...v1.2.2

jellyfish-rs - v1.2.1

Published by porplax 4 months ago

what have changed❓

These crates have been updated.

  • neobridge-rust 0.1.4 -> 0.1.5 (21de36d)

This version adds a small performance boost due to changes to Neobridge::set_list.

Full Changelog: https://github.com/porplax/jellyfish-rs/compare/v1.2.0...v1.2.1

jellyfish-rs - v1.2.0

Published by porplax 4 months ago

🪼new release!🪼

This release grants major optimizations that significantly speeds up the program! The algorithm that computed color for each LED on the neopixel has been worked on. See what has changed below.

📃completed additions since v1.1.2📃

  • Removed BufferStorage because of premature optimizations. (fff2858)
  • Replaced --width, --height with --monitor. Useful for multi-monitor setups. (8dcd480)
  • Added CLI documentation. (13d1feb)
  • Removed nalgebra, smallvec crates from the algorithm; instead it will calculate color purely with math operations. This grants an impressive ~70% performance boost! (d7bbdd3)

❗known issues❗

  • There are no known issues in this version!🎊🎊🎊

game.gif

jellyfish-rs - v1.2.0-alpha.1

Published by porplax 4 months ago

what have changed❓

Here are notable changes.

  • Removed DMatrix in favor of SmallVec.
  • Removed BufferStorage

This change grants a performance boost of ~6% in benchmarking (with depth=16, 1920x1080, leds=30). There are a lot of cons with using SmallVec in this use case. Cache locality is decreased, empty space wastes space, if depth is too high; performance suffers more than just using DMatrix.

If you're suffering from performance issues in this release, consider decreasing depth to below 30.

Using SmallVec in benchmarking offered significant performance improvements against Vec. However more benchmarking is needed.

alpha release‼️

this release is not stable! Consider using latest version instead if this doesn't benefit you.

Full Changelog: https://github.com/porplax/jellyfish-rs/compare/v1.2.0-alpha...v1.2.0-alpha.1

jellyfish-rs - v1.2.0-alpha

Published by porplax 4 months ago

⛔alpha release⛔

This release is from pull request #4. This release introduces changes that may break scripts so I am releasing this as a pre-release.

what have changed❓

Here are notable changes.

  • Switched --width, --height argument to a single --monitor argument. by @porplax in https://github.com/porplax/jellyfish-rs/pull/4
  • You can now choose which monitor to screen record; useful for dual-monitor setups, etc.
  • Documentation for CLI arguments.

New Contributors

Full Changelog: https://github.com/porplax/jellyfish-rs/compare/v1.1.2...v1.2.0-alpha

jellyfish-rs - v1.1.2

Published by porplax 4 months ago

what have changed❓

These crates have been updated.

  • neobridge-rust 0.1.0 -> 0.1.4

Here are notable changes.

  • changed image to &image
  • removed std::mem::take from render::JellyRenderer::grab, it will instead return borrowed value.
  • target optimization changes: opt-level="z" -> opt-level=3

Full Changelog: https://github.com/porplax/jellyfish-rs/compare/v1.1.1...v1.1.2

jellyfish-rs - v1.1.1

Published by porplax 4 months ago

what have changed❓

  • moved JellyRenderer struct into a separate file (fc0e04c)
  • fixed --n_of_leds not being in Neobridge::new() (396a2f5)

Full Changelog: https://github.com/porplax/jellyfish-rs/compare/v1.1.0...v1.1.1

jellyfish-rs - v1.1.0

Published by porplax 4 months ago

🪼FIRST UPDATE SINCE v1.0.0!🪼

This version brings optimizations to the algorithm that grabs colors from the monitor. It also adds an important CLI option that should've been in v1.0.0

-p, --port - Port where the board is located.

📃completed additions📃

  • ✅ Pre-allocation of Vectors.
  • ✅ Create DMatrixf32 once instead of in a loop.

⬆️planned upcoming changes⬆️

  • Linux, and Mac support. (should already be possible, untested tho)
  • Implement new method of screen recording.

❗known issues❗

  • There are no known issues in this version!🎊🎊🎊

Full Changelog: https://github.com/porplax/jellyfish-rs/compare/v1.0.0...v1.1.0

jellyfish-rs - v1.0.0

Published by porplax 5 months ago

Initial Release.