39 lines
1.6 KiB
Markdown
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
|
|
|