# Shooter on self-written 3D engine
About:
Source code of simple shooter on [3Dzavr game engine](https://github.com/vectozavr/3dzavr)
![Project demonstration](img/gamePlay2.png)
[![MIT License](https://img.shields.io/badge/license-MIT-blue.svg?style=flat)](http://choosealicense.com/licenses/mit/)
[![Community Discord](https://img.shields.io/discord/788056426324426782.svg?label=discord&logo=discord)](https://discord.gg/NzSf5tyS)
![Commits](https://img.shields.io/github/last-commit/vectozavr/shooter)
[![TODOs](https://badgen.net/https/api.tickgit.com/badgen/github.com/vectozavr/shooter)](https://www.tickgit.com/browse?repo=github.com/vectozavr/shooter)
![Issues](https://img.shields.io/bitbucket/issues-raw/vectozavr/shooter)
![Repo size](https://img.shields.io/github/repo-size/vectozavr/shooter)
Installation (OS Windows):
1) [Download and install OpenAL library](https://openal.org/downloads/), [unzip it](https://www.7-zip.org) and run shooter.exe file
2) Write ip and port of server in connect.txt file.
3) Write port of the server in server.txt file (only for computer where the server will be running).
3) Enjoy gaming!
[Click here if you want to run the server](https://github.com/vectozavr/shooter_server)
Control:
Mouse, Space, A, S, W, D – player control.
SHIFT – slow motion (this ability is not infinite: its bar is next to hp)
E & Q or keys <- -> – change weapon
R – recharge
O – turn OpenGL on/off
Tab – turn debug mode on/off
Playing with a source code:
1) [Download and install OpenAL library](https://openal.org/downloads/) for SFML sound support (in current version you can't setup this engine without OpenAL)
2) Clone this repository
3) Open project
Using [CLion](https://www.jetbrains.com/clion/) with [MinGW (32-bit)](https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/7.3.0/threads-posix/dwarf/i686-7.3.0-release-posix-dwarf-rt_v5-rev0.7z/download) compiler: open CMakeList.txt as a project
Using [Visual Studio](https://visualstudio.microsoft.com/ru/): open shooter.sln as a project
4) Built project and run the game
Structure:
![Project demonstration](img/structure.png)
Online:
![Project demonstration](img/gamePlay4.png)
GamePlay:
![Project demonstration](img/gamePlay3.png)
![Project demonstration](img/gamePlay5.png)
![Project demonstration](img/gamePlay6.png)
![Project demonstration](img/gamePlay7.png)
![Project demonstration](img/opengl.png)