Crystyanno, que bom saber que já está pensando em seu TCC antecipadamente, pois o tempo voa. Tenha certeza de que se for possível definir o seu tema com tanta antecedência assim, com anuência do curso, vai conseguir tirar o máximo proveito de suas disciplinas. Você buscará, de maneira ativa, respostas para seus desafios durante o aprendizado nas aulas, não sendo apenas um ser passivo, ouvinte. Por exemplo, um caso hipotético se fosse lidar diretamente com as rotinas gráficas em vez de usar uma biblioteca, veria muito da teoria de Geometria Analítica e Vetores, Álgebra Linear, Cálculo Diferencial aplicada na prática com o bônus de ver os vários aspectos da linguagem de programação explorados na implementação das rotinas.
Parabéns pela iniciativa e sucesso em sua jornada.
TL;DR
Se ainda está curioso sobre o que é um Trabalho de Conclusão de Curso, suas etapas, procurando entender sua filosofia para então saber se sua idéia pode se tornar um, a Univesp publica em seu portal alguns deles https://apps.univesp.br/tcc-pi/pi. Vez ou outra uma das pesquisas aparece no canal da Univesp em que os alunos apresentam o que desenvolveram como solução para um empreedimento real. Se sua universidade também fornece acesso aos textos dos TCC publicados, consulte-os para se familiarizar com as norma de publicação da instituição onde estuda.
Gostei das dicas do 0erik0. Complemento que, quanto à linguagem de programação mais adequada, eu acredito que vai ser aquela que você notar ser mais eficiente para implementar sua ideia. Vai ter um pequeno desafio para aprendê-la. Eis alguns exemplos que eu já seguia:
- algo que me surpreendeu! Ver o Filipe Deschamps aplicar vários conceitos (vários mesmo!) de programação quando desenvolveu com a turma o Jogo da Cobrinha. Vale muito a pena conferir essa Playlist que ele caprichou. Fiquei mais surpreso ao ver que era multiplayer, funcional e online, usando praticamente Javascript no front e backend!
- esse carinha aqui javidx9 desenvolve em C++ o projeto de uma gameEngine. Vejo que é bem mais desafiador, pois está construindo uma infraestrutura base não somente para jogos, mas para outras aplicações gráficas.
- ...