glsl.jsはWebGLにおいてGLSLを使えるようにするライブラリです。

ゲームや3Dをリアルに近づけるために必要な要素の一つがシェーダ(ライティング/シェーディング)です。OpenGLでは効率的なシェーダを実現するためにGLSL(OpenGL Shading Language)を開発しましたが、WebGLの世界におけるGLSLとして紹介するのがglsl.jsです。

[![](http://images.moongift.jp/2013/02/Screenshot 2013-02-19 11.04.01_thumb.1361366097.png)](http://images.moongift.jp/2013/02/Screenshot 2013-02-19 11.04.01.1361366097.png)
こちらはこくこくと色が変わるデモ。

[![](http://images.moongift.jp/2013/02/Screenshot 2013-02-19 11.04.05_thumb.1361366100.png)](http://images.moongift.jp/2013/02/Screenshot 2013-02-19 11.04.05.1361366100.png)
全体が変わって格好いいです。

[![](http://images.moongift.jp/2013/02/Screenshot 2013-02-19 11.04.17_thumb.1361366103.png)](http://images.moongift.jp/2013/02/Screenshot 2013-02-19 11.04.17.1361366103.png)
ボールが飛び交うデモ。

[![](http://images.moongift.jp/2013/02/Screenshot 2013-02-19 11.04.30_thumb.1361366105.png)](http://images.moongift.jp/2013/02/Screenshot 2013-02-19 11.04.30.1361366105.png)
スプライト画像のマリオが移動するデモ。

glsl.jsはWebGLのサブセットになります。JavaScriptでロジック処理を行った後、レンダリング処理をglsl.jsが行います。ソースを見ると普通にGLSLが書かれているので移植も容易かも知れません。

glsl.jsはJavaScript製、Apache License 2.0のオープンソース・ソフトウェアです。

MOONGIFTはこう見る

WebGLとOpenGLは似て非なるものですが、よりOpenGL側に近づけようとする努力が数多く行われています。その成果によってこれまでのローカルアプリケーションで行っていた技術が活かせるようになれば、WebGLを使ったサービスが数多く登場する可能性が出てくるでしょう。

同様にレガシーや異なる環境で使えている技術をHTML5で使えるようにするソフトウェアやライブラリは人気があります。HTML5に移行しなければならない理由は自分たちで作り出すことができる、さらにいえば作らなければならないのです。

Pong

gre/glsl.js · GitHub