wise9 › WebGLとはなんなのか、ゲーム好きの大学生に説明してみる
webGL 1.0
WebGL is designed as a rendering context for the HTML Canvas element.
The HTML Canvas provides a destination for programmatic rendering in web pages, and allows for performing that rendering using different rendering APIs. The only such interface described as part of the Canvas specification is the 2D canvas rendering context, CanvasRenderingContext2D. This document describes another such interface, WebGLRenderingContext, which presents the WebGL API.
HTML Canvasが描写(rendering)領域であり、renderingするAPIは複数あり得る(設計になっている.)
しかしCanvasのspecificationではCanvasRenderingContext2Dのみが記述.
このspecificationは第2のAPI、WebGLRenderingContextを定義する.
OpenGLとの関係
It is derived from OpenGL® ES 2.0, and provides similar rendering functionality, but in an HTML context.
非OpenGL環境での利用を可能にするANGLE
OpenGLは低レベルな3DグラフィックスAPI.
関連する(直接の競合ではない)ものとしてDirectXがある.
Q. OpenGLではなくてDirectXに対応したマシン(一部のwindowsとか)ではOpenGLないけどwebGL動くのー?
A. 動きます. ANGLEと呼ばれる中間層を用意して、最終的にはDirectXが使われる.
プログラマサイドとしてはwebGLで書いて何の問題もないってこと.
コラムのところ.
html5experts.jp
ANGLEが無い時、DirectXドライバのインストールを要する点がwebGLの普及を妨げると考えたgoogleはO3Dというplug-inを代替技術として提唱したりしてたみたい.
グーグルがO3Dの方針変換。WebGLに標準を統一し、O3DはJavaScriptライブラリへ - Publickey Smart Editionβ3
Chromium Blog: The future of O3D
shaderとは
説明しよう!シェーダーとはッ! - Master of None
openGLの扱う3Dモデル
サーフェイスモデルを扱う.
OpenGL勉強会用 資料のページ
openGL, openGL ESとの関係
2015/12/6現在の最新版:
OpenGL ESは組み込みシステム向けの軽量版.
WebGLはOpenGL ES準拠のweb向けAPI.