27 Nov

Setting up Eclipse CDT for OpenGL with GLFW and GLAD

What’s OpenGL?

OpenGL is an API to render 2D and 3D graphics. Remember that an API (Application Programming Interface) is an interface for interaction between components of a system. Typically, an API defines a set of functions, protocols and/or tools. I’ll skip the details about the client-server model, but OpenGL allows a client program to communicate with GPUs (Graphic Processing Units, e.g., your videocard) to achieve faster, hardware-accelerated rendering. That’s why OpenGL is a common topic in the game development scene.

OpenGL is focused on just rendering. It’s an API to write and read data from a framebuffer, and that’s it. It won’t handle user input, or sound playback, or loading a PNG image. It does not even have functions to create or close a window. We’ll need auxiliar libraries for all of that.

A minimal OpenGL window

So we want to build a minimal OpenGL application on Windows. We’ll create an empty window with an OpenGL context, using the GLFW and GLAD libraries. In the following, I assume we’re using a 64 bits version of Windows. I’ll also be relying on mingw-w64. In summary, these are our assumptions:

  • Windows operating system (64 bits.) Things will be a tad different for macOS and Linux users.
  • Eclipse CDT.
  • mingw-w64 to build GLFW from sources. Besides, our Eclipse CDT project will be compiled with the gcc version of mingw-w64.
  • GLFW and GLAD libraries.

What’s GLFW?

As told, OpenGL does not provide any facility to create a window, retrieve user input, create the OpenGL context, etc. These functionalities depend on the operating system. GLFW is a C library which provides a neat abstraction layer to handle all of this on several platforms. Notice that GLFW is focused on management of windows, OpenGL contexts, user input and time. It will not play sounds, or load images, etc.

Read More
02 May

DragonScales 3’s page is now active!

Hello everybody! The web page for our new game DragonScales 3: Eternal Prophecy of Darkness is already live! You can read a description of the game including its features, take a look at a few screenshots and the trailer, and of course, purchase the game. For the time being, DragonScales 3: Eternal Prophecy of Darkness is available for Windows and Mac. Here’s the link to the game’s new site: DragonScales 3: Eternal Prophecy of Darkness. We hope you like it!

22 Jul

The Rainbow Machine for Leap Motion is now available on Airspace!

Great, great news! Today is the launch day for the widely anticipated touchless technology, Leap Motion. And our game, The Rainbow Machine, is one of the 75 launch titles. We are very, very happy to see our game in the launch portfolio 😀 It has been a long (and winding) road: sleepless hours of bug hunting and UI redesign. We have to thank the Leap Motion test team for their continued guidance and their patience. Please, take a look at The Rainbow Machine in Airspace. It’s available for both Windows and Mac. We hope you like it 😀

The Rainbow Machine Air Edition is finally out!

The Rainbow Machine Air Edition is finally out!