|
Acadêmico(a): Sérgio Luiz Tomio Junior |
Título: SIMULAÇÃO DE FÍSICA CLIENT-SIDE APLICADA A SIMULAÇÃO DE PROJÉTEIS |
|
Conclusão: |
Nesse trabalho foi possível remover a dependência de um servidor na execução de simulações de física utilizando o motor Hefesto. Foi possível realizar essa melhoria utilizando as rotinas de integração do motor de física CannonJS em conjunto com as rotinas de detecção e tratamento de colisões do Hefesto (convertidas para Javascript). Essa alteração trouxe um grande ganho de performance por remover a comunicação e a latência de rede entre o cliente Javascript e o servidor que executava as simulações de física na linguagem Java. O principal objetivo desse trabalho, remover essa dependência, foi cumprido. Mas não foi possível cumprir essa meta totalmente da forma como ela foi proposta. Inicialmente a ideia era utilizar todas as rotinas do CannonJS, um motor de física com um tempo de desenvolvimento maior que o Hefesto e também utilizado em mais aplicações. Não foi possível cumprir essa meta pois percebe-se que o tratamento de colisões dos dois motores são diferentes. Sendo assim as aplicações Ballistic (ZANLUCA, 2015) e o editor Hefesto (TEIXEIRA, 2015) não se comportariam da mesma forma com o motor novo. Mesmo depois da junção das rotinas dos dois motores o resultado ainda foi positivo em questão de tempo de processamento e consumo de memória RAM. A remoção da dependência de um servidor deixa as aplicações que utilizam o Hefesto mais consistentes, corrigindo problemas refentes a arquitetura escolhida por Teixeira (2015) que foram apontados por Reis (2016) durante a proposta do trabalho. Entre esses problemas um muito eminente era a inconsistência no acesso a internet de escolas, causando problemas quando se tentava executar alguma simulação usando o Hefesto. Outro grande problema era a latência na comunicação entre o cliente desenhando a simulação e o servidor processando-a. Como esses dois problemas são decorrentes da estratégia de executar a simulação de física em um servidor web, eles são resolvidos por esse trabalho. O motor de física novo ainda tem limitações. Atualmente ele só consegue utilizar um núcleo do processador, causando um gargalo de processamento em simulações complexas. Além disso como esse trabalho teve o intuito de corrigir um problema de arquitetura ele não adicionou nenhuma funcionalidade. Sendo assim, as limitações funcionais apontadas por Teixeira (2015) ainda se aplicam. |
|
|