Mini City as a living city has to live. How to achieve this? It's not a simple task because not only vehicles and citizens makes city full of life. As the first step to reach this goal we decided to put birds all around the city. Birds make player to feel more immerse with the scene, with the simulated environment.
This kind of ideas have to be considered from the very beginning otherwise developers and level designers will have a lot more work. Every tree, building, street lamp, dumpster should be equipped with proper navigation (landing) points (this red spheres on image below are not an apples). Navigation points are necessary for birds' assets to know where they are able to land and where they can fly next.
Every movable element of the game such us citizens and birds is calculated at play time even behind camera. Because birds are not crucial part of the game, they can not make big impact on performance factor. So we had to find a simple way of creating not a linear path of birds movement and at the same time as much close to real birds behavior as it is possible. Our choice fell on randomization of destination point with remembaring of ten last visited points. This means that at the moment when birds start their flight, it chooses randomly next destination navigation point with exclusion of visited points.
When player approaches near birds, they will become scared. This action will instantly trigger their begging of flight. This will simulate situation when scared birds fly away from scaring source. Their choice of destination will be limited to negative direction from scaring source.