Giter Club home page Giter Club logo

opengl_pacmankiller's Introduction

Opengl 2D Game

Anish Gulati: 20161213

This game is inspired by the game Pacman. The Objective of this game is to have more fun and gain as much points as possible. This game is divided into three levels and some instructions to reach to the next level is displayed on the title bar of the game window.

Installation

This game needs three major development packages from the mentioned libraries as GLFW3, GLM, and GLEW. CMAKE is also needed to run this project.

Following are the instructions for installing these packages

sudo apt install cmake pkg-config libglfw3-dev libglm-dev libglew-dev

Run the code

cd path/to/project
mkdir build
cd build
cmake ../
make
./pacman

Controls:


  • a/d - Move Left/Right

  • Space - Jump

  • Mousewheel - Zoom control

  • Arrow keys - Panning

  • Player control using mouse drag - Try it!

Extra Features


  • 3 Levels with different difficulties
  • Countdown-timer using BCD display
  • Moving player using mouse
  • Automatic panning when user tries to go out of the screen
  • Modular codebase

World


  1. Random Enemies/Balls without slopes - Have random velocity, color and radius. Every time player hits these, it's score increases by 3.
  2. Random Enemies/Balls with slopes - Have properties of enemy mentioned above + slabs placed at random angles on the balls. When the player hits these balls, it is reflected away using the laws of reflection. And the score is increased by 5.
  3. Water - The speed of player is slow due to more deaccelaration faced by the player in the water. Hence jumping height is also affected. Also when the player touches the any point in the pond other than bottom most point, it follows physics and the ellipse trajectory to reach the bottom most point of the pond(until disturbed by user input).
  4. Magnet - Attracts the player towards it selves.
  5. Porcupines - Hitting this would lead to reduction in score of 1 and disappearing of this enemy for some time.
  6. Trampoline - Jump with more velocity than usual jump.

Scoring


Collision with normal ball = +3

Collision with flying ball with inclined slope = +5

Collision with ground porcupines = -1

opengl_pacmankiller's People

Contributors

anishgg avatar

Watchers

James Cloos avatar

opengl_pacmankiller's Issues

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.