• OpenGL
    • Graphics LibraryなのでGL
    • 2D/3D用
    • Embedded System用のOpenGL ESもある
      • glBegin / glEndがないので別物みたいな意見がある(どういうこと?)
      • OpenGLは起動時に使用可能なAPIを探索して関数をロード(関数ポインタに代入)する必要がある(故にGPU特有の拡張機能などを使える)が、OpenGL ESは使える関数が定まっているのでその必要がない
    • ステートフルなAPIになっている
  • EGL
    • レンダリングAPIと各プラットフォームのウィンドウシステムとの架け橋になるもの?
  • GLFW
    • FrameworkだからFWなんて言わないよな・・・?
    • input・window・Monitor周りを楽にしてくれるっぽい
  • GLEW
    • Extension Wrangler
      • wranglerって何だよ・・・(馬や家畜を牧場で育てている人間らしい?)
    • OpenGLのExtension取得はかなり面倒だけど、GLEWはそれを楽にしてくれるらしい
      • PFNGLDEBUGMESSAGECALLBACKARBPROCって何????(多分PFN GL Debug Message Callback ARB)
        • PFNはPointer to the FunctioNらしい(出典) えぇ・・・
        • ARBと付いているのはOpenGL Architecture Review Boardのメンバーから承認された?拡張機能(つまり認証済みExtensionみたいな感じ?)
          • 出典は「かなり面倒」のリンクに飛んでちょっと下
  • GLUT
    • Utility Toolkit
    • 複数ウィンドウの描画・bitmapやfontなど?(出典
    • ティーポットや球体のようなオブジェクトを描画してくれる機能もあるらしい?
  • Vulkan
    • ステートレスなAPIで、うれしい
    • C言語用のライブラリだが、KhronosGroup/Vulkan-Hpp というライブラリ(というかヘッダ?)が用意されている
  • WebGPU
    • ライブラリではなく仕様だが、説明のため列挙
  • wgpu
    • WebGPUのAPIに基づいて設計されたライブラリ
      • Rust用crateだと思っていたんだけど、そうとも限らないらしい
      • ライブラリはRustで記述されており、Rustはもちろん色々な言語で利用できる
    • Vulkan, Metal, D3D12, OpenGL, WebGL2, WebGPUで動作する