course project: adding two types of dynamic shadows to quake3 engine