ProtoTank/README.md

39 lines
1.6 KiB
Markdown

# ProtoTank
A quick demonstration of the development of my skills in video games and C++ programming.
It (should be) a "very dirty" 80s-style arcade game with tanks.
<img src="https://repo.jcsmith.fr/pictures/prototank_readme_logo.jpg"/>
I like big-canon, ballistics, retro and simulation, and that's where the initial concept came from.
The similarity with Battlezone (Atari, 1980), 3D Tank Duel (ZX Spectrum, 1984) and other tank-like arcade
games, their influence on development is limited to the graphic reference. In fact, I was only able to discover
some of them during my research phase.
The game itself isn't very polished. Mainly focused on game engine design, state-of-the-art rendering, and CPU-accelerated computing techniques.
This code has been written with experimentation and education in mind. It is subject to the MIT license.
I've used some libs for backend boilerplate like:
- SFML (window management)
- tinyobjloader (OBJ file loading)
- Tweaked DirectXMath (Heavy math duty)
## Why ... ?
Why using SFML? I've really wanted to focus on the projection stuff and geometry constructs in first place.
SFML is a light library, giving a drawing window access and pretty easy to use, nothing more. I'll look on
a direct interface for window management (X11 or gdi32) later...
Why using DirectX for math? Yeah I know GLM exist, but it lacks of SIMD ready functions. And with a MIT license,
the question of the proprietary code issue was quickly answered!
## About
*Actually, 72 coffees have been used to produce this code.*
Feel free to ask question about the code: jackcartersmith@jcsmith.fr