Как написать структура классов платформера?
-взять готовый опен сорс движок и посмотреть
-начать с чего-то попроще, постепенно усложняя задачу
-отличать структуру классов от структуры движка, дабы не вводить себя и других в заблуждение
1. Перед нами серьёзный проект: есть и сеть, и подкачка, и поиск путей. Если вы будете писать платформер с нуля, вероятно, «лишние» компоненты вы писать не будете.
2. Это компоненты, а не классы. Структура классов в геймплее будет более густая, а в рендеринге и физике — менее.
Например, пишем 2D-рендеринг. Я бы делал Renderer, Tileset, TileLayer, Sprite, Particle…
В зависимости от желания и целей, лучше воспользуйтесь чужим движком или напишите свой простенький. Куча вопросов отпадёт.