Giter VIP home page Giter VIP logo

ufrgs-starwars-game's Introduction

Projeto da Cadeira INF 01047 - Fundamentos de Computação Gráfica (2016/01)##

Prof. Marcelo Walter

Objetivo:

Desenvolver um jogo com a mecânica semelhante ao jogo Dig Dug II. Utilizando tecnologia OpenGL alinhado aos conhecimentos adquiridos no decorrer do semestre.

Descrição Geral:

O jogo possui 3 tipos de "visão": 2D, 1ª Pessoa e 3ª Pessoa.

Controles:

  • W - Movimenta para frente.
  • S - Movimenta para trás.
  • A - Movimenta para Esquerda [2D e 3ª Pessoa] | Gira câmera 90º Esquerda [1ª Pessoa].
  • D - Movimenta para Direita [2D e 3ª Pessoa] | Gira câmera 90º Direita [1ª Pessoa].
  • V - Alterna modo de jogo entre 2D, 1ª Pessoa e 3ª Pessoa.
  • Space - Cria rachadura, somente se o personagem estiver em cima de um buraco.

O personagem está em um mapa finito. Caso atravesse o limite do mapa, será caraterizada "derrota".

O mapa é composto por duas imagens BMP 20x20:

  • A primeira caracteriza o mapa inferior, neste caso define onde será "chão da nave" e onde será "espaço".
  • A segunda caracteriza o mapa superior, neste caso define a posição dos elementos listados abaixo.

No mapa existem os elementos:

  • Esfera
    • Elemento 3D
    • Elemento de posição fixa, em caso de colisão o personagem não avança.
  • Inimigo
    • Elemento 3D
    • Elemento de posição variável, em caso de colisão caracteriza "derrota".
    • O inimigo possui inteligência para detectar que está a menos de 4 casas de distância do personagem e, nesse caso, iniciar uma perseguição.
  • Buraco
    • Textura modificada
    • O personagem pode andar sobre, os inimigos não.
    • Com o personagem em cima de um buraco será possível criar uma rachadura na direção para qual a visão do personagem aponta.
  • Rachadura
    • Textura modificada
    • O personagem pode andar sobre, os inimigos não.
    • A rachadura será criada até o próximo buraco, ou o fim do mapa, caso não exista buraco em seu caminho.
    • Quando as rachaduras fecharem um "polígono", o menor polígono será "desmoronado".
      • Neste caso foi utilizado o algoritmo recursivo "FloodFill" para contar a quantidade de casas em cada polígono, identificando assim o menor.

Print1.jpg Print2.png Print3.jpg

ufrgs-starwars-game's People

Contributors

tiagocamilo avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.