回答編集履歴
1
追記
answer
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
OpenGL は、ライブラリではなくAPI仕様を規定しているだけなので、「OpenGL を使う」といった場合は実際はその仕様にしたがって実装されたライブラリを使っていることになります。
|
8
8
|
|
9
9
|
* Ubuntu: Mesa3D
|
10
|
-
* Windows:
|
10
|
+
* Windows: Nvidia などグラフィックベンダーが提供するドライバ
|
11
11
|
|
12
12
|
それらのライブラリが GPU が利用できる部分は GPU で行うようになっており、ライブラリの利用者側ではどの処理が GPU で行えわれるかを意識する必要はないはずです。
|
13
13
|
|
@@ -29,4 +29,18 @@
|
|
29
29
|
|
30
30
|
* OpenGL でどの処理を GPU/CPU で行うか決められているわけではない。
|
31
31
|
* GLFW はウィンドウ管理などを行うライブラリ。CPU で実行される。
|
32
|
-
* GPU が必要なのは、CPU でも同じ処理を行えるが、GPU を使ったほうが圧倒的に高速であるため。
|
32
|
+
* GPU が必要なのは、CPU でも同じ処理を行えるが、GPU を使ったほうが圧倒的に高速であるため。
|
33
|
+
|
34
|
+
----
|
35
|
+
|
36
|
+
## 追記 (Windows の場合)
|
37
|
+
|
38
|
+
Windows の場合は、グラフィックベンダーが提供するドライバを基本的には使うようです。
|
39
|
+
|
40
|
+
[How Does It Work On Windows?](https://www.khronos.org/opengl/wiki/FAQ#How_Does_It_Work_On_Windows.3F)
|
41
|
+
|
42
|
+
Windows の場合、
|
43
|
+
* OpenGL を使うアプリケーションをコンパイルするには、opengl32.dll をリンクする。
|
44
|
+
* opengl32.dll は、グラフィックベンダーのドライバを探して、ロードする。(例: Nvidia なら nvoglv32.dll)
|
45
|
+
* opengl32.dll 自体はソフトウェア実装の OpenGL 1.1 のみ提供する。ドライバが見つからないときは、この OpenGL 1.1 しか使えない。
|
46
|
+
* それより新しいバージョンの OpenGL を使いたい場合は、ドライバが必須
|