Scientific simulation in Bevy #1678
Replies: 9 comments 32 replies
-
It seems like there are at least two distinct use cases that could be interesting to think about. One is where bevy directly runs a scientific simulation, which seems to be what the description above is focused on. But there's also clearly a need for test bed simulations to use in robotics and other similar domains. This has been mentioned at least once in #1207. I assume that that use case has softer requirements around mathematical provability and reproducibility and is more like a game with the player out of the loop. Related to that are the AI test bed setups that various people have built, either on top of existing games like StarCraft or using custom engines. It seems like the main missing feature to enable that is a way for the external AI tool to introspect game state, either by looking at a rendered view as in #1207 or somehow introspecting the ECS store directly. That ties in to other conversations about modding where the ability of non-bevy, or even non-rust, code to interact with the ECS is interesting. |
Beta Was this translation helpful? Give feedback.
-
Another critical domain-specific integration: GIS. |
Beta Was this translation helpful? Give feedback.
-
I want charts/graphing! But I'm not sure where to start. Is there an obvious Rust library to integrate, or will we need to roll our own? |
Beta Was this translation helpful? Give feedback.
-
Another general feature: easy parallel process replication to enable monte-carlo simulation. See this thread on Discord. |
Beta Was this translation helpful? Give feedback.
-
@alice-i-cecile and I were chatting about UOM, I am of the opinion that this is a fundamental primitive that Bevy might want to be opinionated on, so that dependent crates can interoperate. The With Bevy and the ECS being so friendly to plugins, being opinionated on units of measure may be critical to avoid ecosystem fracturing with CAD/simulation/game physics plugins. |
Beta Was this translation helpful? Give feedback.
-
actually would be very nice to be able to draw some pointclouds/octrees e.t.c. in Bevy, I already have an application and I need to implement the visualization of the physical process. |
Beta Was this translation helpful? Give feedback.
-
I think it would be nice to start off as a plugin (https://github.com/bevyengine/bevy/blob/main/docs/plugins_guidelines.md) and maybe then move on to more "standalone" format. |
Beta Was this translation helpful? Give feedback.
-
Fixed time-step simulation without a frame-rate limit would also be nice. My use-case would something like https://www.codingame.com/training/easy/mars-lander-episode-1 |
Beta Was this translation helpful? Give feedback.
-
I've been working in agent-based modelling and decision support systems and I'm considering to use bevy for future implementations, academically and for an upcoming client project. So right now I'm working on a first prototypic implementation and I'm interested to share experiences. |
Beta Was this translation helpful? Give feedback.
-
Bevy has tremendous potential as a framework for scientific simulations: it's fast, modular, easy to read/write and hooks in readily to convenient features like graphics and UIs.
This is a tracking issue to discuss the important features to help us get there (h/t @alec-deason). Many of these are "ecosystem" issues, rather than something that needs to be solved by the Bevy engine itself.
Universal features
Domain specific features
Beta Was this translation helpful? Give feedback.
All reactions