only draw when map is dirty?