Giter VIP home page Giter VIP logo

not-another-temple-run's Introduction

Not Another Temple Run

Description

Not Another Temple Run is a 3D running game that consists of 2 different environments (modes) developed using Opengl C++

Game Modes

Arcade Mode

The player is running in a turning lane (that should be followed) with a target to collect certain amount of coins to win

  • Collectables : Coins that appear randomly both in position and amount.
  • Obstacles : Rocks that the player should avoid by leaning or jumping.

image

Survival Mode

The player is running endlessly with a target to live as much he/she can (no certain score to win)

  • Collectables : Shields that appear randomly and give the player a period of protection from fire
  • Obstacles : Fire that the player should avoid by leaning or jumping

image

Video

Game.mp4

Game Camera

The game consists of 2 modes of camera prespective (that always follows the player)

First Person Camera

Camera eye is the head of the player and center is a point on the ground in front of the player

Third Person Camera

Camera eye is behind the player while camera center is the player itself

Game Controls

Mouse

  • Left Click → Player jump
  • Moving arrow Right →Player lean right
  • Moving arrow Left →player lean left

Key board

  • Press D → Player turn right (to folow the ground)
  • Press A → Player turn left (to follow the ground)
  • Press space → Player jumping
  • Press Right arrow →Player leaning right
  • Press Left arrow → Player leaning left

Win/Lose Actions

Arcade Mode

  • Win Action : Collect 35 coin
  • Lose Action : Collide with rock or falling off the ground (not following its turning)

Survival Mode

  • Win Action : No win Action
  • Lose Action : Collide with fire or falling off the ground (not following its turning)

Sound effects

There is a sound effect generated for different actions in the game

  • Colliding with the rock in Arcade mode
  • Colliding with Fire in Survival mode
  • Collecting Coin in Arcade Mode
  • Obtaining Sheild in Survival Mode
  • Falling off the ground in both Arcade and Survival Modes

Lights

Lights is modelled as one light source that changes its intensity and position to simulate day/night cycle

Challenges

Develop a dynamic way to generate the turning ground of the game.

How we solved it

  • Store the direction of each ground (NEGATIVE_X , NEGATIVE_Z , POSITIVE_X, POSITIVE_Z) beside its center.
  • Develop 3 methods drawLeft , drawRight , and drawForward that takes the current ground object and return the new ground (its center and direction).

Future Enhancements

  • Use the dynamic way of generating ground to generate the ground dynamically at runtime.
  • Add magnet feature in Arcade Mode.

Authors

not-another-temple-run's People

Contributors

abdulaziz-hassan avatar ahmad45123 avatar marsafy1 avatar shimaabetah avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

not-another-temple-run'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.