Trabalho de Formatura Supervisionado (MAC0499)

Desenvolvimento de um módulo de reconhecimento de voz para a game engine Godot

Apreciação pessoal e crítica

No início do ano, eu estava determinado a fazer um TCC mais voltado a um aspecto prático, cujo objetivo era possivelmente relacionado a jogos. Tenho muito a agradecer ao professor Gubi, que me ajudou a consolidar o tema através da sugestão da game engine Godot. Gostei muito da ferramenta e da possibilidade de criar um módulo para ajudá-la a crescer. Afinal, este é o propósito de software com código aberto.

Nos primeiros meses de trabalho, pesquisei sobre a teoria de reconhecimento de voz e diversas bibliotecas que pudessem vir a ser usadas no módulo para Godot. A teoria em si por trás do funcionamento é bastante complexa, mas foi possível fazer ligações com o que eu sabia de Métodos Estocásticos e Inteligência Artificial.

A biblioteca escolhida, Pocketsphinx, possui diversas qualidades desejadas: rápida, configurável, escrita em linguagem C. Sua documentação, infelizmente, fica um pouco a desejar, mas a existência de diversos exemplos pela Internet ajudou em seu entendimento.

A arquitetura de Godot é bastante simples e intuitiva, ao menos se comparada a diversas outras game engines e frameworks para jogos que já usei previamente (libGDX e um pouco de Unreal Engine). Sua documentação em relação ao uso do editor é bastante completa, mas não se pode dizer tanto quanto a partes específicas de sua arquitetura. Um tempo considerável foi usado lendo diversas implementações de classes de Godot para tentar usar ou criar algo parecido em meu módulo Speech to Text. Ainda assim, acho que explorar seu código fonte foi uma experiência enriquecedora para ver como um projeto de grande porte é feito e organizado.

Por fim, tive contato com o editor Godot quando criei o jogo Color Clutter. Conforme dito antes, a existência de vasta documentação da game engine facilitou bastante a procura de informações básicas de uso.

Ao todo, sinto-me bastante satisfeito com todo o trabalho realizado e experiência adquirida ao longo do TCC. Publiquei o módulo, junto com o Color Clutter, em dois fóruns de Godot. Pretendo continuar o desenvolvimento de Speech to Text, adicionando novas funcionalidades e oferecendo suporte para diferentes sistemas operacionais.