お役立ち情報を毎日発信しています!!
閉じる

OpenGL開発環境の構築手順【Visual Studio+GLFW+GLAD+GLMをWindows上にセットアップ】

開発 2026年4月26日 2026年4月26日

OpenGLを使ったゲーム開発を始めるには、まず開発環境を整える必要があります。この記事では、Windows上でVisual Studioを使い、GLFW・GLAD・GLMの3つのライブラリを導入して、OpenGLでの開発をすぐに始められる状態にするまでの手順を解説します。

管理人
ライブラリの導入はつまずきやすいポイントですが、手順どおりに進めれば大丈夫です。一緒にセットアップしていきましょう!

この記事で構築する環境

最終的に以下の構成が整った状態を目指します。

要素使用するもの
OSWindows 10 / 11
IDEMicrosoft Visual Studio Community
コンパイラMSVC(Visual Studioに付属)
グラフィックスAPIOpenGL 3.3(Coreプロファイル)
ウィンドウ管理GLFW
OpenGL関数ローダーGLAD
数学ライブラリGLM

前提条件

  • C++の基本的な文法がわかる(変数、関数、クラスの概念程度)
  • Visual Studioの基本操作ができる(プロジェクト作成、ビルド・実行程度)

手順1: Visual Studioのセットアップ

1. Visual Studio Communityのインストール

  1. Visual Studio公式サイト(https://visualstudio.microsoft.com) からVisual Studio Communityをダウンロードします
  2. インストーラーを実行し、ワークロードの選択画面で「C++によるデスクトップ開発」にチェックを入れます
  3. インストール」をクリックして完了を待ちます

このワークロードには、MSVCコンパイラ、Windows SDK、デバッガ、C++標準ライブラリなどが含まれています。

2. プロジェクトの作成

  1. Visual Studioを起動し、「新しいプロジェクトの作成」をクリックします
  2. テンプレート一覧から「空のプロジェクト」(C++)を選択し、「次へ」をクリックします
  3. プロジェクト名を入力します(例: OpenGLGame
  4. 保存場所を指定して「作成」をクリックします

プロジェクトが作成されたら、ソリューションエクスプローラーで以下のフォルダ構成を確認しておきましょう。

OpenGLGame/
├── OpenGLGame.sln          # ソリューションファイル
└── OpenGLGame/
    ├── OpenGLGame.vcxproj   # プロジェクトファイル
    └── (ソースファイルはまだなし)

手順2: GLFWの導入

GLFW(ウィンドウ管理ライブラリ)を導入します。

1. GLFWのダウンロード

  1. GLFW公式サイト(https://www.glfw.org) にアクセスします
  2. Download」ページに移動します
  3. 64-bit Windows binaries」をダウンロードします(例: glfw-3.4.bin.WIN64.zip

2. ファイルの配置

ダウンロードしたZIPを展開し、プロジェクトフォルダに dependencies ディレクトリを作成して配置します。

OpenGLGame/
├── OpenGLGame.sln
├── dependencies/
│   └── glfw/
│       ├── include/
│       │   └── GLFW/
│       │       ├── glfw3.h
│       │       └── glfw3native.h
│       └── lib-vc2022/
│           ├── glfw3.lib
│           └── glfw3dll.lib
└── OpenGLGame/
    └── ...

3. Visual Studioでのプロジェクト設定

ソリューションエクスプローラーでプロジェクト名を右クリックし、「プロパティ」を開きます。

構成を「すべての構成」、プラットフォームを「x64」に設定してから、以下を変更します。

インクルードディレクトリの追加

C/C++」→「全般」→「追加のインクルードディレクトリ」に以下を追加します。

$(SolutionDir)dependencies\glfw\include

ライブラリディレクトリの追加

リンカー」→「全般」→「追加のライブラリディレクトリ」に以下を追加します。

$(SolutionDir)dependencies\glfw\lib-vc2022

リンクするライブラリの指定

リンカー」→「入力」→「追加の依存ファイル」に以下を追加します。

glfw3.lib
opengl32.lib

opengl32.lib はWindowsに標準で付属しているOpenGLのライブラリです。

手順3: GLADの導入

GLAD(OpenGL関数ローダー)を導入します。GLADはWebサービスで必要なコードを生成してダウンロードする方式です。

1. GLADの生成

  1. GLAD Generator(https://glad.dav1d.de) にアクセスします
  2. 以下の設定を選択します
設定項目
LanguageC/C++
SpecificationOpenGL
API glVersion 3.3 以上(3.3を推奨)
ProfileCore
  1. GENERATE」をクリックします
  2. 生成された glad.zip をダウンロードします

2. ファイルの配置

ZIPを展開し、dependencies に配置します。

OpenGLGame/
├── dependencies/
│   ├── glad/
│   │   ├── include/
│   │   │   ├── glad/
│   │   │   │   └── glad.h
│   │   │   └── KHR/
│   │   │       └── khrplatform.h
│   │   └── src/
│   │       └── glad.c
│   └── glfw/
│       └── ...
└── ...

3. プロジェクトへの追加

インクルードディレクトリに追加

「追加のインクルードディレクトリ」に以下を追加します。

$(SolutionDir)dependencies\glad\include

ソースファイルの追加

glad.c をプロジェクトに追加します。

  1. ソリューションエクスプローラーの「ソースファイル」を右クリック
  2. 追加」→「既存の項目」を選択
  3. dependencies\glad\src\glad.c を選択して追加

手順4: GLMの導入

GLM(数学ライブラリ)を導入します。GLMはヘッダーオンリーライブラリのため、導入は最も簡単です。

1. GLMのダウンロード

  1. GLMのGitHubリリースページ(https://github.com/g-truc/glm/releases) から最新版をダウンロードします
  2. ZIPを展開して dependencies に配置します
OpenGLGame/
├── dependencies/
│   ├── glad/
│   ├── glfw/
│   └── glm/
│       └── glm/
│           ├── glm.hpp
│           ├── vec3.hpp
│           ├── mat4x4.hpp
│           └── ...
└── ...

2. インクルードディレクトリに追加

「追加のインクルードディレクトリ」に以下を追加します。

$(SolutionDir)dependencies\glm

ヘッダーオンリーライブラリのため、ライブラリファイルのリンクは不要です。

手順5: 動作確認

すべてのライブラリが導入できたら、ウィンドウ表示のテストコードで動作確認を行いましょう。

ソースファイルの作成

ソリューションエクスプローラーの「ソースファイル」を右クリックし、「追加」→「新しい項目」から main.cpp を作成します。

以下のコードを入力してください。

#include <glad/glad.h>
#include <GLFW/glfw3.h>
#include <iostream>

// ウィンドウサイズ変更時のコールバック
void framebuffer_size_callback(GLFWwindow* window, int width, int height)
{
    glViewport(0, 0, width, height);
}

// キー入力のコールバック
void processInput(GLFWwindow* window)
{
    if (glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS)
        glfwSetWindowShouldClose(window, true);
}

int main()
{
    // GLFWの初期化
    if (!glfwInit())
    {
        std::cerr << "GLFWの初期化に失敗しました" << std::endl;
        return -1;
    }

    // OpenGLのバージョンとプロファイルを指定
    glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
    glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
    glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);

    // ウィンドウの作成
    GLFWwindow* window = glfwCreateWindow(800, 600, "OpenGL Game", nullptr, nullptr);
    if (!window)
    {
        std::cerr << "ウィンドウの作成に失敗しました" << std::endl;
        glfwTerminate();
        return -1;
    }
    glfwMakeContextCurrent(window);
    glfwSetFramebufferSizeCallback(window, framebuffer_size_callback);

    // GLADの初期化(OpenGL関数のロード)
    if (!gladLoadGLLoader((GLADloadproc)glfwGetProcAddress))
    {
        std::cerr << "GLADの初期化に失敗しました" << std::endl;
        return -1;
    }

    // メインループ
    while (!glfwWindowShouldClose(window))
    {
        // 入力処理
        processInput(window);

        // 画面をクリア(暗い青緑色で塗りつぶし)
        glClearColor(0.2f, 0.3f, 0.3f, 1.0f);
        glClear(GL_COLOR_BUFFER_BIT);

        // バッファのスワップとイベントの処理
        glfwSwapBuffers(window);
        glfwPollEvents();
    }

    glfwTerminate();
    return 0;
}

ビルドと実行

  1. ツールバーのプラットフォームが「x64」になっていることを確認します
  2. F5キーを押してビルド・実行します
  3. 暗い青緑色のウィンドウが表示されれば成功です
  4. Escキーを押すとウィンドウが閉じます

プロジェクト設定の最終確認

すべてのセットアップが完了した時点で、プロジェクトプロパティの設定値は以下のようになっているはずです。

追加のインクルードディレクトリ

$(SolutionDir)dependencies\glfw\include
$(SolutionDir)dependencies\glad\include
$(SolutionDir)dependencies\glm

追加のライブラリディレクトリ

$(SolutionDir)dependencies\glfw\lib-vc2022

追加の依存ファイル

glfw3.lib
opengl32.lib

dependenciesフォルダの全体構成

dependencies/
├── glad/
│   ├── include/
│   │   ├── glad/
│   │   │   └── glad.h
│   │   └── KHR/
│   │       └── khrplatform.h
│   └── src/
│       └── glad.c
├── glfw/
│   ├── include/
│   │   └── GLFW/
│   │       ├── glfw3.h
│   │       └── glfw3native.h
│   └── lib-vc2022/
│       ├── glfw3.lib
│       └── glfw3dll.lib
└── glm/
    └── glm/
        ├── glm.hpp
        └── ...

トラブルシューティング

「glad.h が見つかりません」というエラー

インクルードディレクトリの設定が正しくない可能性があります。以下を確認してください。

  1. プロジェクトプロパティの構成が「すべての構成」になっているか
  2. プラットフォームが「x64」になっているか
  3. パスが $(SolutionDir)dependencies\glad\include になっているか

「LNK2019: 未解決の外部シンボル」というリンクエラー

ライブラリのリンク設定を確認してください。

  • glfw3.libopengl32.lib が「追加の依存ファイル」に含まれているか
  • 「追加のライブラリディレクトリ」のパスが正しいか
  • プラットフォームがx64で、ライブラリも64bit版を使っているか

ウィンドウが表示されずにクラッシュする

GPUドライバーが古い可能性があります。お使いのグラフィックカードのメーカー(NVIDIA / AMD / Intel)の公式サイトから最新のドライバーをダウンロードしてインストールしてください。

「C/C++」カテゴリがプロパティに表示されない

プロジェクトにソースファイル(.cppまたは.c)が1つも追加されていないと、「C/C++」カテゴリが表示されません。先に main.cpp を追加してから設定を行ってください。

まとめ

  • Visual Studioで「C++によるデスクトップ開発」ワークロードをインストールし、空のプロジェクトを作成する
  • GLFWGLADGLMdependencies フォルダに配置し、プロジェクトプロパティでパスを設定する
  • GLADglad.c をソースファイルとしてプロジェクトに追加する必要がある
  • GLMはヘッダーオンリーのためインクルードパスの設定だけでOK
  • テストコードでウィンドウが表示されれば環境構築は完了
管理人
環境構築は地味な作業ですが、ここを乗り越えれば楽しい描画プログラミングが待っています!ウィンドウが表示できたら、次は三角形の描画に挑戦してみてください!

最後までお読みいただき、ありがとうございました!


よかったらシェアしてね
URLをコピーしました
URLをコピーしました

この記事を書いた人

くすんちゅ
このサイトの管理人。沖縄在住のフリーランスエンジニア。最近は陸だけでなく、海の中でも見かけられることがある。

関連記事

ここにはおすすめ商品の名前を入れます
ネットショップ広告商品名1
ここにはおすすめ商品の名前を入れます
ネットショップ広告商品名2