Chapter 5. Cross-platform, Windows

In this chapter we will dissect our GLFW spinning triangle sample. We will move “game” implementation into a separate class, which we will reuse later in Android version. It will be triangle rendering related code. In order to make it platform-independent we will separate it from platform-specific calls. All environment related code, such as window […]

Chapter 4. Printf in OpenGL ES

Now, having OpenGL ES projects for 2 different platforms, we can see what is common and what is different. Common is generic structure: Creating GL context, initializing data, main loop with frames rendering, exit. GL calls (Thank God!) look similar too. The difference is in program and GL initialization, in GL-related includes (gl/egl on Android […]

WordPress fix 4. Header, footer

1. Icons in the top menu WordPress Dashboard->Appearance->Menus allows to manage menus, but in text format only. The only fields available are "URL" and "Navigation Label" in a text format. However, though WordPress itself doesn't offer image options for the menu, CSS does. Professional advice from Artem Demin: It is possible to access menu item […]

WordPress fix 2. Posts formatting

My template, Nirmala, is full-screen, which is perfect for the front page. But posts themselves are full-screen too, which seems little TOO wide, don’t fit well into range of vision: Would be logical to assume that we need to add another custom CSS, something like But no, it doesn’t work. Well… looks like WordPress isn’t […]

WordPress fix 1. Image settings

1. How to hide featured image from the post bodyI am very happy that my template (Nirmala) does NOT generate post thumbnails automatically from post images, since not every post needs them. You always can add so called “featured image” to your post to generate thumbnails. However, when featured image added, WordPress automatically inserts it […]

How to get such website

Now, when we have what to publish, it’s time to think about a web site. First, we’ll need a domain name (I used Godaddy.com) and web site hosting (I used DailyRazor.com). When ready, we can think about web site engine. There is a bunch of options. For blog-type sites (like this one) WordPress is the […]

Chapter 3. Hello Windows

Visual Studio, Windows, C++, OpenGL ES, GLFW, GLAD 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 do exist. OpenGL producers strongly advise to use a window toolkit (GLFW) and an OpenGL loading libraries (GLAD). […]

Chapter 2. Hello Android

Visual Studio, Android, Native activity, C++, OpenGL ES Official Android languages are Java and Kotlin. Native activity will allow us to write code for Android in C++. Besides, Visual Studio’s Native activity template includes OpenGL ES initialization. 1. Open Visual Studio. Pick "Create a new project". In templates menu pick Android, then “Native Activity Application […]

Chapter 1. Installing Visual Studio

1. Google “Visual Studio download”. Proceed to https://visualstudio.microsoft.com Continue to Download Visual Studio -> Community 2022 (or whatever is current). Download and start installer. 2. On Workloads page pick “Desktop development with C++”. Don’t need extra components so far, so use default settings (on the right-hand side panel). If necessary, we can install them later. […]