Thursday, April 27, 2017

Crowd Simulation

It seems like I haven't updated the blog for a long time again... There were just too much to do! But I enjoyed every Tech Animation class as always. I have also taken down some notes, so I'll try to update my thoughts from previous classes.

So for this class and last class, the topic was mainly crowd simulation. I felt it quite intuitive to solve the problem using fluid simulation. However, the crowd flow seems too "smooth". The people simulated are going around the crowd coming from opposite direction, forming a large swirl. This is not what happens in real life: People are usually too lazy to make such a large detour. From my observation, people usually slows down and lean to the side to make way, so actually small swirls should be formed. And this is why I quite appreciate the research of shoulder motion when people moving in the crowd. It really makes the simulation feel more natural.

There are also many data driven approaches. State machine and database are used to decide character's next action. The interactions with both objects (stairs, discontinuous road etc, AI technology applied) and other characters (different gestures and movements among the crowd) are both enabled. I feel that the interaction with objects is quite satisfying, and this is somewhat like the robotic character simulation discussed previously (hopefully I'll update those discussions soon), and this seems even better than the robotic approach. However, the interaction with people seems weird to me, especially with the fact that the data was based on behaviors within an ant crowd. I can't see the meaning of the interactions in the simulation, which makes sense, because the way ants interacting with each other definitely is meaningless for human beings.

The discussions made me think of a game called Watch Dogs, in which every character has a predefined routine, which includes all kinds of interactions with objects and other characters. The player can follow anyone of them to see what will happen next to those characters. It really costs a lot to design so many complicated interactions. What if one day, the crowd simulation and AI technologies are so advanced that they can do the design work automatically? It would be much easier to design more good games!