https://github.com/caiofov/cg-webgl
A Subway Surfers-inspired game where players dodge trains and collect coins to increase their score.
https://github.com/caiofov/cg-webgl
bootstrap css game game-development github-pages html subway-surfers webgl
Last synced: 3 months ago
JSON representation
A Subway Surfers-inspired game where players dodge trains and collect coins to increase their score.
- Host: GitHub
- URL: https://github.com/caiofov/cg-webgl
- Owner: caiofov
- Created: 2023-06-26T02:25:52.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-11-21T21:15:06.000Z (8 months ago)
- Last Synced: 2025-02-13T04:31:19.691Z (5 months ago)
- Topics: bootstrap, css, game, game-development, github-pages, html, subway-surfers, webgl
- Language: JavaScript
- Homepage: https://caiofov.github.io/CG-WebGL/
- Size: 2.41 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Trabalho 2 - Computação Gráfica

Segundo trabalho da disciplina de **Computação Gráfica I** do semestre 2023.2
- Caio de Freitas Oliveira - 501375
- Matheus Ribeiro Alencar - 494711## Como rodar:
Basta abrir o arquivo `index.html` em um servidor local.
## Sobre o jogo:
Inspirado no famoso _Subway Surfers_, o jogador deverá desviar dos trens para alcançar sua melhor pontuação. Além disso, ele pode também coletar moedas, que adicionarão mais pontos ao seu total.
Caso colida com um trem e queira recomeçar, será necessário recarregar a página.
## Sobre requisitos
- Câmera: A visão é em 3ª pessoa, podendo ser movida com as teclas `WASD`. O personagem do jogador também se move junto à câmera.
- Iluminação: Utilizamos o modelo de reflexão de Phong com luzes ambiente, direcional e especular. A luz da moeda é pontual e se move.
- Transformações: Foram realizadas translações para a moeda, jogador e trens. Além disso, a moeda também rotaciona.
- Todos os objetos tem textura, com exceção do jogador e da moeda, que possuem cor sólida.
- Utilizamos o **WebGL** como foi feito durante as aulas da disciplina. Além disso, também utilizamos a biblioteca **math.js** para realizar operações com matrizes.
- O jogador e a moeda são objetos carregados de OBJ a partir de um leitor implementador por nós.