Module-based scientific physics engine architecture

The ever-evolving landscape of digital simulations demands innovative frameworks to achieve both realism and efficiency. The research highlights the issues of modern software architecture for physics simulation. The new architecture was developed to mitigate scalability and flexibility issues. The e...

Full description

Saved in:
Bibliographic Details
Date:2023
Main Authors: Bernatovych, A.A., Stetsenko, I.V.
Format: Article
Language:English
Published: PROBLEMS IN PROGRAMMING 2023
Subjects:
Online Access:https://pp.isofts.kiev.ua/index.php/ojs1/article/view/578
Tags: Add Tag
No Tags, Be the first to tag this record!
Journal Title:Problems in programming
Download file: Pdf

Institution

Problems in programming
Description
Summary:The ever-evolving landscape of digital simulations demands innovative frameworks to achieve both realism and efficiency. The research highlights the issues of modern software architecture for physics simulation. The new architecture was developed to mitigate scalability and flexibility issues. The essence of the proposed architecture resides in the convergence of three pivotal concepts: the modular physics engine, the physics pipeline, and the Entity Component System (ECS) pattern. The modular physics engine represents a paradigm shift in simulation design. Compartmentalizing functionalities into modules, this approach fosters flexibility and reusability, enabling efficient construction of specialized simulations. The physics pipeline orchestrates simulations through structured stages, analogous to graphics pipelines. It guides dynamic forces, collisions, and interactions, optimizing resource use and integrating custom systems for accuracy. Complementing these, the ECS pattern decouples data and behavior, facilitating the construction of user defined physical pipeline comprised of loosely coupled modules. Combined with the modular physics engine and physics pipeline, ECS forms a comprehensive approach for complex physics simulations.Problems in programming 2023; 3: 30-39