You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Added detailed design section explaining the use of Entity-Component System (ECS) and Automata Theory for modeling the physics engine. Included examples and remarks on system interactions.
Copy file name to clipboardExpand all lines: paper/paper.md
+20-1Lines changed: 20 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -19,6 +19,8 @@ Delta-Engine is a physics engine that provides a new software architectural para
19
19
- Virtualization of physics objects and IO emulation using mathematical and physical abstractions.
20
20
- Newtonian physics spaces as Runtime Infrastructure (RTI).
21
21
- Implementation of several physics spaces modules (e.g., Kinematics Module - Fluid Mechanics Module).
22
+
- Implementation methodologies involve using **Entity-Component-System (ECS)** to implement the structure of the physics engine together with **Automata Theory**; such that, each component of the physics architecture could be represented by a system of component objects.
@@ -58,7 +60,24 @@ Two architectural models are being proposed here; a **hierarchial model** repres
58
60
* Android Userspace Runtime.
59
61
* AVR Runtime.
60
62
* ARM Runtime.
61
-
* x86 Userspace Runtime.
63
+
* x86 Userspace Runtime.
64
+
65
+
### Detailed Design:
66
+
Detailed design could be carried out using the **Entity-Component System (ECS) Framework** to model the structure of the engine, and the **Automata Theory** to model the behavior of the engine. Both could be linked via the system part of the ECS; ECS systems can be state machines; either deterministic or non-deterministic; cyclic or non-cyclic in runtime behavior.
67
+
68
+
> [!NOTE]
69
+
> ## Example:
70
+
> A physics object; a ball; has the following:
71
+
> (1) A component that is attached to the **Inertial Ref. Frame System** through an entity `ID_BALL`.
72
+
> (2) A component that is attached to the **Acceleration/Deceleration System** through an entity `ID_BALL`.
73
+
> (3) A component that is attached to the **Molecular System** through an entity `ID_BALL`.
74
+
> (4) A component that is attached to the **Interaction System** through an entity `ID_BALL`.
75
+
> (5) A component that is attached to the **Mechanics System** through an entity `ID_BALL`.
76
+
>
77
+
> ## Remarks:
78
+
> * It's not ideal to add the ball object to the **Fluid Dynamics System**; therefore, both the **Mechanics** and the **Fluid Dynamics** are specializations of the **Atomic/Newtonian RTI Subsystem**.
79
+
> * The collection of the previous systems represent the core of the Delta-Engine; the **Atomic/Newtonian RTI Subsystem**.
80
+
> * Systems are operated using State-Machines; either deterministic or non-deterministic in nature; cyclic or non-cyclic.
0 commit comments