[WebGL書評]WebGL+HTML5 3DCGプログラミング入門
和書としては最初期の WebGL 入門バイブル
今回は久しぶりに書評記事です。
本書は日本でも最初期に発刊された WebGL の入門書です。初版は 2012 年の 6 月ですから、以前ご紹介した[WebGL書評]実践プログラミングWebGL よりも早くに出版されたものになります。
肝心の内容はむしろ、一切古めかしさを感じさせない充実の内容です。
早速その中身を見ていくことにしましょう。
この本に込められた想い
本書の前書きにはこんなフレーズがあります。
「読んで考え/悩む」とわかる本ではなく「読むと」わかる本にしたい
読者が技術的な冒険をしたとき、いつでも安心して戻ってこれる安全基地となれる本にしたい
著者である松田晃一さんの思いが、前書きを読むだけで伝わってきます。
この前書きのフレーズのとおり、本書は基礎の基礎から丁寧に解説している一冊だと言えます。ある意味丁寧すぎるとも言えるその詳細な解説テキストの結果が、この書籍の大型化に一役買ってきます。
570ページ以上にも及ぶページ数、そしてけして安くない価格はその副作用のようなものでしょうか。遠巻きに、書店でこの本を目にするととてつもなく重厚なイメージを受けるかもしれません。しかしむしろその中身はこれでもかというくらい噛み砕いて書かれています。丁寧にすればするほどボリュームは増えてしまうものですから、このあたりは塩梅が難しいですね。
まずはさっと目次から、章ごとの主題だけ抜き出してみましょうか。
- WebGL とは
- HTML5 と Javascript 入門
- はじめの一歩
- 三角形の描画とアニメーション
- 色と画像を使う
- 小休止:OpenGL ES シェーダ記述言語(GLSL ES)
- 3次元の世界へ
- 光溢れる世界へ
- 様々なテクニック
さて、お気づきになられましたでしょうか。
本書は全九章からなる WebGL を主体にした書籍ですが、まず最初は HTML5 や Javascript の解説から始まっています。WebGL を扱う前の段階として、javascript の初学者までもカバーすることを目指したのでしょう。
さらに、ポリゴンを描画する前の段階、つまり Canvas に点を打つなどの非常に基本的なプログラムの解説にさらにもう一章をまるまる使っています。三角形のポリゴンが登場するのは実に第四章からです。
これらのことからも、非常に基本に忠実に、丁寧に丁寧に書かれていることがわかると思います。
図解は非常に多いもののオール白黒
本書は先述のとおり、非常に丁寧に書かれている反面、逆にそれが原因で非常に分厚く重たいです。
また、書籍内はすべてモノクロ、字が小さく詰め込まれているといった悪い印象は実際に読んでみればないのですが、見る人によってはすごく堅苦しい印象を受けてしまうかもしれません。
とにかく楽しく面白く、というよりは、堅実に一つ一つ知識を積み重ねていくタイプの書籍であると言えると思います。基本からみっちり基礎を磨いておきたいという人には、逆にこういった地道に丁寧に書かれた書籍が合うのではないでしょうか。
字は程よい大きさで、また図解も非常に豊富な本書。
サンプルコードとして掲載されているものは、いずれも適度な行間やコメントが挿入されており見やすいですね。
また、重要な部分や新しく追加された概念などが太字で書かれており、ポイントとなる部分を目で追いやすくなるように工夫されています。多彩な図解と一緒に概念を理解しつつ、具体的なコードを見て流れを把握する、この一連の思考の流れがスムーズに進むように書かれているなと感じます。
付録も多彩!
本書は先述の全九章の他にも、巻末の付録がなかなか充実しています。
特に GLSL のビルトイン関数の一覧 は非常に使いやすいでしょう。これはなかなか便利だと思います。日本語の情報が極めて少ない GLSL、こういった付録が付いていると非常に助かりますね。
その他にも、書籍内で登場する用語の解説一覧であったり、行列に関する話題、さらにはローカルサーバーを立ててオフラインの実行環境を構築するための解説まであります。
また、書籍内で利用されているサンプルが収録された CD-ROM も付属。まさに盤石、充実の内容ですね。
すぐに試せるサンプルが多数収録された付属 CD-ROM。
学生にもオススメできるまさに WebGL の教科書
本書の目次を見ればわかると思いますが、内容的には初学者〜中級者向けです。高度なシャドウィングや物理ベースシェーディングなど、先端の 3D 技術の解説を本書に期待するのは間違いですね。
ただ、基本に忠実に概念を初めの初めから解説してくれているので、中級者の方にとっても、頭のなかで曖昧になっている概念をあらためてしっかり理解することの助けには十分になると思います。新しい技術をガシガシ身に付けるためにというより、自分自身のスキルの地盤固めのための一冊であると言えるかもしれません。
これから javascript や 3D プログラミングに挑戦してみたいという学生さんや、グラフィックスプログラミングが初めてのエンジニアにもお勧めできる内容です。著者の方がおっしゃっているとおり、ふと基本に立ち返るときや新しい技術に挑戦するとき、あたかも安全基地のように、本書を開くことで基本を再確認できると思います。そういった意味では、末永く手元に置いておきたい一冊とも言えますね。
逆に上級者は本書を読むことで得られるものが少ないはずです。もっとほかの書籍をあたったほうがいいでしょう。
以下のリンクから書籍を購入いただきますと、当サイトに売上げの一部が還元されます。