Atualmente trabalho com dev mobile com Flutter, q é meu ganha pão, mas estou fazendo meu projeto pessoal q é um jogo.
O que posso dizer com experiência como desenevolvedor de software é q vc precisa ter um sustento. Pode ser qqr coisa, pode ser vc trabalhando de garçom de noite, trabalhando como freela, trabalhando em alguma empresa fora da área, ou até ter pais/parentes q possam te sustentar enquanto estuda.
Infelizmente vc não pode fugir disso, pois dinheiro é o q nos deixa confortável para conseguir seguir nossos sonhos (mto diferente de trazer felicidade, mas é outra conversa).
Vc tendo um sustento, já pode pular pro próximo passo. Imagino q esteja seguindo as notícias do mercado de jogos (se não segue, faça, afinal vc precisa ter um mínimo de noção sobre o q acontece no Brasil e no mundo).
Um pouco do que sei, o mercado de desenvolvimento de games aqui no Brasil tem foco em jogos indie ou jogos para mobile, não sei se já mudou o cenário, mas estava assim qndo dei uma olhada a um tempo atrás. Então se for seguir por aqui no BR, tem q olhar um pouco sobre esse mercado. Olhe também sobre o q as vagas pedem para ter um pouco mais de noção (se tiver vagas). Mas se vc visa o exterior, já deixo claro q é bom ter inglês, e ser mto bom no que quer fazer, pois lá a competição é grande, ainda mais com os famosos layoff q sempre acontece anualmente, ou seja, sempre aparece um monte de gente experiente no mercado.
Mas tem a alternativa de vc msm produzir seu jogo. Esse é um caminho difícil, mas ao meu ver, pode ser mais fácil do que conseguir ser contratado por uma empresa.
Bom, agora pra parte técnica. No desenvolvimento de jogos são normalmente apoiados por 3 pilares básicos: programação, sons e gráficos (2d ou 3d). Se vc for programador solo, precisará aprender os 3 ou precisará pelo menos saber onde achar pessoas para suprir seu ponto fraco.
Uma alternativa é procurar por pessoas q estejam aprendendo e juntos fazer um jogo. E se possível, ache pessoas q faça coisas opostas do que vc faz, tipo, vc vai ser o programador, então procure pessoas q desenhem ou modelem 3d e tbm outra q faça música. Assim vai ajudar bastante a criar um jogo mais completo.
Ainda da parte técnica, outra coisa q vc tem q ver é qual Engine vc quer utilizar. Existem várias, então faça um joguinho bem simples, tipo jogo da velha, em cada Engine e aprenda como é mexer com cada um. Após isso, veja qual vc se identifica mais e foque nele, pois como vc ainda não tem mta experiência com jogos, então o ideal é escolher um e focar nele. Claro q futuramente vc pode mudar, mas até lá vc já terá o conhecimento suficiente para mudar de Engine e não sentir o efeito de iniciante eterno (aquele q estuda tudo, mas não consegue produzir nada direito).
Tbm pode utilizar sobre o q cada Engine oferece, por exemplo, a Unity é a mais popular e mais fácil de entrar no mercado, porém se seu jogo der certo, terá q pagar uma porcentagem para eles. Cabe vc a pensar qual é o melhor pra vc iniciar.
Esse daqui serve pra qqr area de desenvolvimento. Procure por canais no discord, ou grupos no facebook ou em qqr outra rede social onde vc conseguirá achar pessoas que buscam aprender sobre a Engine q vc escolheu. Normalmente lá terão pessoas q poderão tirar dúvidas, vc pode achar pessoas q queiram montar um jogo ou até dependendo do grupo tem a sessão de vagas.
Sobre material, vc pode ver youtube, a própria documentação da Engine, talvez alguns livros e tutoriais q vc consegue achar no google msm. Não sei mto o q opinar, pois vc não disse exatamente a Engine q vc quer aprender.
Sobre a parte de programação msm, vc pode ver sobre POO, pois é bastante utilizado no geral. Tbm pode ver sobre ECS q é utilizado por exemplo na Unity ou herança q é utilizado no Godot. Aprender um pouco sobre alguns design pattern mais utilizados na Engine de sua escolha.
Tbm recomendo aprender a desenhar e modelar e talvez até saber manipular um som. Não é necessário, mas vc dominando um pouco de outros pilares te ajuda a entender melhor como eles funcionam.
Outra coisa q vc terá q aprender melhor é sobre física, mas não precisa abrir um livro para aprender, vai buscando sobre o assunto conforme for programando. Claro q terá coisas bem mais complexas, mas isso deixa pro seu eu futuro aprender. Tbm é preciso entender o timing das animações, aprender a fazer efeitos visuais, armazenamento de dados, q normalmente é feito em arquivos. Se for mexer com multiplayer, precisará entender o básico de redes, como funciona a sincronização do jogo (pois existem várias técnicas para sincronizar). Tbm se for fazer servidor, precisará aprender a mexer ... bom, com coisas de backend.
Por último, vou falar de como eu estudaria se estivesse no seu lugar. Primeiro eu não iniciaria os estudos com a criação de um projeto do zero, tipo, não inventar um jogo. Foque primeiro em aprender a dominar o básico da Engine e linguagem de programação. Eu chamo isso de ambientar com a ferramenta. Tipo, não adianta querer cavar um buraco com um martelo, Vai ser bem ineficiente. Então recomendo pegar um monte de tutoriais e ir fazendo. Tente fazer do início ao fim, e se tiver problemas no meio do caminho de um tutorial tente resolver até fazer funcionar. Caso for realmente impossível, ai faça outro tutorial. Não tem problema errar ou abandonar tutoriais, afinal vc estará na fase de aprendizagem. O importante é tentar resolver os problemas antes de abandonar, por mais chato q seja.
Depois q estiver ambientado o suficiente, ai sim recomendo criar uns projetinhos seus próprios. Não precisa ter ideias mirabolantes, o importante é vc tentar fazer, errar, ajustar e ser jogável.
Claro esse é só minha opinião de como estudaria. Eu baseio isso mto no meu erro no passado q foi achar q só aprendendo a teoria bastava. Mas não, precisa ter bastante prática. E quanto mais, melhor.
Bom, acho q seria isso mais ou menos e o q sei para iniciar na carreira de jogos. Claro q tudo q falei não é 100% preciso, pois não estou dentro da área de jogos.