had to implemented some virtual functions because in my GameWindow class, I have a vector of Thing objects that contain objects that inherit from the Thing class