base 2d renderer