-
Notifications
You must be signed in to change notification settings - Fork 0
architecture
Tanner Mickelson edited this page Jan 24, 2015
·
18 revisions
The Icicle Engine uses a virtual file system that allows mounting multiple folders/archives as file systems. Folder/archive locations can be added to the file system, and the file system abstracts away the handling of paths and streams.
The game loop of the Icicle Engine will be optimized for multithreaded systems. Frames will be synchronized only at key synchronization points where certain data is required to be ready. An update step should follow an execution flow like shown below:
- resource loading thread
- per-frame processing
1 collect input
- buffer controller input
- buffer keyboard input
- buffer network messages
- etc... 2 process events generated last frame 3 update game systems
- update physics
- update animation
- update audio
- render last frame 1 calculate scene transforms 2 cull invisible objects 3 draw visible objects 4 sort object list for rendering 5 submit frame to GPU