encapsulate sprite behavior into VisualComponent