Game idea(s)

Wanted to call this chapter “Game Concept” or “Game Scenario”, but that would be too premature. There is no clear concept or script in my head yet. Although the visual concept and general direction are more or less settled down. When thinking about a future game, it’s important to decide not only what you WANT […]

Chapter 8. Graphics Engine

Tags: Graphics Engine Architecture, Procedural Modeling, Renderer vs Modeler, C++, OpenGL ES 3.2, Low-Level Graphics, 3D Demos Well, it’s a big topic. I’d even say HUGE. Here we’ll need to decide how to build and render our scene/models, where we’ll get our 3D models from, how we’ll load, unpack and control them, which and how […]

Chapter 6. External files, Windows

Tags: Visual Studio, File I/O, Resource Management, Win32 API, Build Events, C++, Data-Driven Design Now, having a cross-platform solution, we can start thinking about our Graphics Engine. However, the first question will be not about graphics, but how we gonna handle data files (like shaders, models, textures and so on)? For example, currently our triangle […]

Chapter 4. Platform independence

Tags: Software Architecture, C++ Classes, Cross-Platform Design, Code Decoupling, Platform Abstraction, Reusable Core In the previous 2 chapters, we have successfully “married” Android and C++, Windows and OpenGL ES. Now, having 2 C++/GLES projects for 2 different platforms, let’s see what is common and what is not. The difference actually looks frightening, seems like nothing […]

GitHub

How to download repository from GitHub 1. Open provided GitHub repository link, for example (like in chapter 3) https://github.com/bkantemir/_wg_403 2. Click green button “Code”. 3. I usually use “Download ZIP”. 4. When downloaded, go to your Downloads folder and unpack downloaded zip file to your hard drive (usually C:). 5. Since in my case all […]

Chapter 3. Hello Windows

Tags: Visual Studio, OpenGL ES 3.2 on Desktop, GLFW, GLAD, Win32, C++, Cross-Platform Foundation Using OpenGL ES on the PC is less straight forward than on Android. The reason is that GL ES is intended for mobile devices, NOT for desktops. Fortunately, solutions exist. OpenGL producers strongly advise to use a window toolkit (GLFW) and […]