Рейтрейснат билярд

Създайте 3D билярд, използвайки трасиране на лъчи в реално време.

Изискванията са:
* Да има билярдна маса с 6 джоба и 16 топки.
* Играта да се играе с двама "играча", повече или по-малко по Eight-ball правилата.
* Да може да се разхождаме над масата и да изберем по какъв начин (откъде, с каква сила) да се удари бялата топка.
* Да се симулира движението на бялата топка по масата, ударите й в другите топки и тяхното задвижване. Не е необходимо да реализирате 100% акуратна физика - стандартната нютънова механика е достатъчно. Когато топка попадне в джоб, може просто да изчезва.
* Като бонус, направете топките да се търкалят - колкото по-реалистично, толкова по-добре.
* Бонус 2: направете сенките върху билярната маса меки (ако не се сетите за начин да направите това достатъчно бързо, питайте за хинтчета).

За вдъхновение, хвърлете поглед на foobillard

Задачата е за един или двама студента.
При двама студента, нека си разпределят задачите по някакъв начин (примерно, единият реализира графиката и GUI, другият реализира физиката и гейм логиката).