Multi-Threaded Pipelined Game Engine Data Synchronization Questions

Posted by Douglas on Game Development See other posts from Game Development or by Douglas
Published on 2013-10-18T21:04:37Z Indexed on 2013/10/18 22:18 UTC
Read the original article Hit count: 285

Let's say I'm setting up a worker pool based game engine with pipelining. Let's say I have 4 stages in my pipeline as such:

  • Stage 1: Physics
  • Stage 2: AI/Input
  • Stage 3: Game Logic
  • Stage 4: Rendering

Now let's say that the physics detects a collision between a bullet and a character in stage 1. Two frames later the game logic may choose to remove that bullet from the simulation, however none of the other copies of the data for the other pipeline stages will get this information. How is this sort of thing and other things like it get handled? Do you generally make changes like this to every pipeline stage's data at the end of a frame?

© Game Development or respective owner

Related posts about engine

Related posts about architecture