Overall
#1 Imposter Rendering
Load Model, I used Assimp library.

#2 Skeletal Animation
Then, apply skeletal animation to this object.

#3 Initialize Camera
Now, we need to initialize cameras in 8 different angles.

#4 Capture
Capture object in different angles, store in framebuffer.

#5 Generate Billboard Object
Generate Billboard object, simple quad object that always facing towards camera.

#6 Apply Texture
Apply captures on the billboard object.

Imposter Rendering Done!

#7 Simulation Steps

Angle Computation
Calculate which camera’s capture should be used by calculating angle between camera & object.

Collision Check
Determine whether object was collided with enemy or ally objects.

Move
If object was not collided, move it.

Attack
If object was collided with enemy object, attack.

Animation State Change
Determine object’s animation state by it’s current collision state.

Massive Animating Rendering
Massive animating object rendering, couple acceleration methods used in this project. Gpu Skinning, Imposter rendering, Frustum culling

