Overview

The Windows platform started as a 16-bit operating system.

It later evolved into a 32-bit operating system, starting from Windows 95.

Today, there are 32-bit and 64-bit versions of Windows targeting x86 and ARM processors.

The x86 Windows support both Windows Desktop and UWP applications, but ARM Windows only supports UWP applications.

The latest version is Windows 10, which is continuously being improved with regular updates.

A game engine should target at least the 64-bit x64 platform. The number of users of the 32-bit x64 operating system is now very low.

Types

The Windows API declares its own types as typedefs of the C types.

As the Windows API originates from 16-bit Windows, the definition of the integer types matches the definition of a 16-bit word, even when a program is compiled on a 32-bit or 64-bit system.

Resource File

A resource file is built into an application binary (.exe).

A resource file contains application data such as icons and cursors.

The application loads the resource data from the binary at run time.

To include resources in a binary, do the following:

  1. Create a resource definition (.rc) file. This file defines the types of resources and their identifiers. The resource definition file may include references to other files, such as an icon image.
  2. Use the Microsoft Windows Resource Compiler (RC) to compile the resource definition file into a compiled resource (.res) file. The RC compiler is provided with Visual Studio and the Windows SDK.