Jornacitec Botucatu, XII JORNACITEC - Jornada Científica e Tecnológica

Tamanho da fonte: 
DESENVOLVIMENTO DE JOGO 3D COM RAYCASTING EM PYTHON E PYGAME
Hugo Santos

Última alteração: 2023-10-04

Resumo


O presente trabalho descreve o desenvolvimento de um jogo 3D utilizando a técnica de raycasting (SMITH, 2018) implementada em Python com o auxílio da biblioteca Pygame. A técnica de raycasting é amplamente utilizada na criação de ambientes tridimensionais simulados em tempo real, sendo notável por sua eficiência em sistemas computacionais de recursos limitados. O jogo consiste em um ambiente labiríntico no qual o jogador assume o papel de um personagem que deve enfrentar uma série de desafios e inimigos. A importância deste trabalho reside na aplicação prática e didática de conceitos de computação gráfica (GONZALEZ; WOODS, 2019) e programação de jogos.Para o desenvolvimento, foram utilizados os seguintes componentes principais: uma classe de manipulação de objetos no jogo, permitindo a criação e movimentação de NPCs e elementos estáticos; um sistema de renderização baseado em raycasting, que possibilita a criação da perspectiva 3D a partir de um ambiente bidimensional; um mecanismo de pathfinding para a movimentação dos NPCs; e um sistema de controle de interação do jogador, incluindo movimentação, disparo de armas e gerenciamento de saúde (SHREINER et al., 2016).A metodologia empregada seguiu uma abordagem iterativa, começando pela implementação da renderização baseada em raycasting. Posteriormente, foram adicionados elementos estáticos e NPCs ao ambiente do jogo. O sistema de controle do jogador foi desenvolvido em paralelo, possibilitando a interação com o ambiente e personagens. O pathfinding foi integrado para proporcionar movimentação autônoma aos NPCs, tornando-os capazes de navegar pelo labirinto.Os resultados obtidos demonstram um jogo funcional, com uma jogabilidade envolvente e desafiadora. A técnica de raycasting se mostrou eficaz na criação de um ambiente tridimensional simulado em tempo real, mesmo em sistemas com recursos computacionais limitados. As interações entre o jogador e o ambiente, bem como com os NPCs, contribuem para uma experiência imersiva.

Texto completo: PDF