Skip to content

edagener0/GameEngine2D

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GameEngine2D

  • Desenvolvimento de um game engine para jogos 2D utilizando Java e, como prova de conceito, de um jogo semelhante ao jogo do Dyno.

Tabela de conteúdos

Propósito

  • Adquirir conhecimentos acerca das boas práticas da programação orientada a objetos.
  • Aprender a desenvolver um jogo.
  • Conhecer a importância do desenvolvimento de testes unitários e desenvolvê-los utilizando JUnit

Game Engine

  • A Game Engine é constituído por dois pacotes:
    1. engine
    2. geometry

Geometry

  • Este pacote divide-se em 3 pacotes:

    1. lines
    2. shapes
    3. utils
  • Este pacote é responsável por conter todas as figuras geométricas (Círculos e Poligonos) e classes auxiliárias para a definição destes poligonos que representam pontos, linhas e segmentos de reta.

Engine

  • Este pacote divide-se em 2 pacotes:
    1. gameobjects
    2. ge

GameObjects

  • Este pacote é responsável por conter toda a funcionalidade relacionada com os GameObjects.

  • Todos os GameObjects têm uma:

    1. Transform que indica a posição, layer, escala e rotação do GameObject
    2. Behaviour que reflete o comportamento do GameObject
    3. Shape que corresponde à imagem do GameObject
    4. Collider para efetuar a deteção de colisões com outros GameObjects.

Ge

  • Este pacote é responsável por conter toda a funcionalidade relaciona com o Game Engine.
  • No Game Engine é possível adicionar e remover GameObjects, ativar e desativá-los, destruí-los, verificar colisões, dar update.
  • Existe também um método responsável por correr o mainloop do Game Engine.
  • A deteção de colisões é feita por layers, isto é, a verificação de colisões ocorre dentro da mesma layer para as diferentes layers existentes, ou seja objetos em layers diferentes nunca colidem. Isto é uma forma de otimização das colisões.

DynoGame

Executar o programa a partir do código fonte

Pré-requisitos: Git, Java e Java Development Kit instalados.

  1. Clonar o repositório
git clone https://github.com/edagener0/GameEngine2D.git
cd GameEngine2D
  1. Correr o programa (VSCode)
# abrir o visual studio code
code .
# Após abrir o visual studio, ou o seu editor de código de preferência, basta executar o ficheiro Main.java

About

Game Engine para jogos 2D e jogo baseado no jogo do Dyno como prova de conceito.

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages