Releases: m-rots/violet
v0.2.4
Autocompletions are now also available through Pyright as Violet now adheres to PEP 561 and generally follows Pyright's guidelines.
Full Changelog: v0.2.2...v0.2.4
v0.2.2
v0.2.1
Introducing: The Obstacle Intersections API! 🎉
This new API enables you to query which pixels groups are colliding between obstacles and agents.
Ideal for implementing obstacle avoidance behaviour.
As it's using quite a bit of bit-mask magic, its use should be limited to simulations with <500 agents.
Violet 0.2.1 is fully backwards-compatible with 0.2.0. Meaning that any code written with 0.2.0 will work as intended in 0.2.1.
Full Changelog: v0.2.0...v0.2.1
v0.2.0
The in_proximity_accuracy
method now returns a stream of (agent, distance) tuples so you do not have to recalculate the distance between the two agents. To remove the distance, a new without_distance
method has been added to ProximityIter
.
Full Changelog: v0.1.0...v0.2.0
v0.1.0
The first release of Violet is LIVE! 🥳
A lot has changed in comparison to last year's simulator:
- Automatic agent wandering behaviour
- Documentation galore
- Fully deterministic simulations with PRNG seeds
- Install Violet with a simple
pip install
😎 - Massive proximity querying performance improvements (1000 agents @ 88fps)
- Matrix-powered multi-threaded configuration testing
- Minimal boilerplate (who needs 3 files for a simple simulation?)
- Polars-powered simulation analytics
- Replay-able simulations with a ✨ time machine ✨
- Separation between framework and assignment code
- Type-safe configuration system (with TOML support)
Full Changelog: https://github.com/m-rots/violet/commits/v0.1.0