← Back to context

Comment by tgv

1 hour ago

One example (Carla) showcases asynchronous components. In a game, you can write a big, single threaded loop, but that means that all components must be ready to produce the next frame, so you either reduce the frame rate to give them more time, or you cut the heavy computational parts. When you run each component asynchronously, e.g. the model might update at a higher rate than the frame renderer, leading to a more accurate simulation, or vice versa, giving a better frame rate when the simulator stutters.

Now think more complex, like a factory. If you run a system with many inputs, distributed to multiple monitors and controllers, this approach looks very interesting. If you want to add some extra monitor, e.g. to compare the output of a controller with some other state, it's really easy to add.

It's not magic, of course. You still need to think about what you're doing...