Giter Site home page Giter Site logo

pixufo's Introduction

PixUfo

Enjoy the cosmic weightlessness and avoid enemies in a 2D space.

image

What so special?

Author's weightlessness steering - realistic movement and space-like steering created from scratch.

Purpose

Make the game by learning C++ and random framework. In this case - SDL2.

Requirements

Running

  • at least 1280x720 display resolution,
  • GNU/Linux or macOS.

Development

  • g++ (gcc with libstdc++) with version of 8 or above.

Gameplay

Goal: avoid the Nebulas (grey-red vechicles) by steering the Ufo using arrows. Note that there is no gravity. Menu buttons confirmation is done by clicking enter key and pausing the game by escape key. Unfortunately changing the system resolution with the game opened may break it's rendering.

Disclaimer

Works well on GNU/Linux. On macOS a bare binary is build instead of Application Bundles vel .app. On Windows some fonts are blended and Nebulas (enemies) position randomization doesn't work.

Building a project

Linux-based OS (TL:DR for Ubuntu)

sudo apt update &&
sudo apt install git git-lfs gcc g++ make libsdl2-dev libsdl2-ttf-dev &&
git clone https://gitlab.com/mattmaniak/pixufo.git &&
cd pixufo &&
make &&
./PixUfo

macOS with Homebrew

brew update &&
brew install git git-lfs gcc g++ make sdl2 sdl2_ttf &&
git clone https://gitlab.com/mattmaniak/pixufo.git &&
cd pixufo &&
make &&
./PixUfo

Remove object files

GNU/Linux and macOS

make clean

Development

Coding Style

Coding style is Google C++ Style Guide.

Validating Coding Style

Python 3 is required to do it via cpplint.

python3 -m venv .venv &&
source .venv/bin/activate &&
python3 -m pip install -r python_packages.txt

Running C++ Linter

make lint

pixufo's People

Contributors

mattmaniak 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.