Estou tendo problemas para entender o design de jogos. Na plataforma Android, tenho uma atividade e defino sua visualização de conteúdo com uma visualização de superfície personalizada. A vista de superfície personalizada atua como meu painel e eu crio instâncias de todas as classes e faço todo o desenho e cálculo lá.
Pergunta: Em vez disso, devo criar as instâncias de outras classes na minha atividade?
Agora, crio uma classe de thread personalizada que lida com o loop do jogo.
Pergunta: Como uso essa classe em todas as minhas atividades? Ou tenho que criar uma instância separada da classe de thread estendida a cada vez?
No meu jogo anterior, eu tinha vários níveis que precisavam criar uma instância da classe thread e na classe thread tive que definir métodos construtores para cada nível separado e, no loop, use uma instrução switch para verificar qual nível ele precisa renderizar e atualização. Desculpe se isso parece confuso.
Eu só quero saber se o método que estou usando é ineficiente (o que provavelmente é) e como proceder para projetá-lo da maneira correta. Eu li muitos tutoriais por aí e ainda estou tendo muitos problemas com esse tópico em particular. Talvez um link para alguns tutoriais que explicam isso? Obrigado.