Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics

Thanks for the question! Each paintable pixel in the environment is actually its own object. I'm able to optimize it because it's all on a fixed grid, so lookup is really quick. I don't need to update the pixels outside of when they get colored in, and I only draw the pixels that are actually on screen, so it's all O(1). Paintable pixels  on moving objects like platforms and thwomp are a bit more complicated, but follow the same general principal. It also helps that the art style leaves a lot of negative space, meaning there are fewer pixels to keep track of.