本書は、初学者の方々に向けたグラフィックスプログラミングの入門書です。
現代においては、大人から子どもまで多くの人がスマートフォンやタブレット端末を持っています。その画面に映し出されるのは多種多様な「グラフィックス」(graphics)です。画像や映像をはじめ、各種のアプリやゲーム、インターネットなど、日常生活のいたるところにグラフィックスは存在します。
少し話が逸れますが、筆者自身がはじめてプログラミングに触れたのは、もう20代も後半に差し掛かったころだったと記憶しています。当時、プログラミングの素人だった筆者が生み出したものはと言えば、マウスのクリック操作で遊ぶことができるミニゲームでした。30手前のいい大人が、自らがプログラムしたキャラクターがディスプレイの中で生き生きと動き回ることに感激し、いちいち歓喜しては年甲斐もなくプログラミングに熱中したのを今でも覚えています。
それから現在に至るまで、世の中はものすごいスピードで変化してきましたが、もし筆者が20年遅く生まれていたとしても、やはりグラフィックスプログラミングに興味を持ったでしょう。筆者にとって、グラフィックスとそれをプログラミングするという行為はそれほど魅力的なものなのです。
本書では、グラフィックスプログラミングに興味を持っている一人でも多くの方に、グラフィックスプログラミングの魅力を伝えつつ、それに取り組むために必要となる数学の基礎知識や、プログラミングのテクニックを広く習得してもらうことを念頭に置いています。開発環境の準備が比較的手軽なJavaScriptを利用しながらも、グラフィックスプログラミングの基礎はもちろん、本格的な実装にも触れることができるような内容を盛り込みました。
本書の執筆にあたり、池田泰延さん、鹿野壮さん、紀平拓男さん、比留間和也さんに、レビューや校正等に協力いただきました。ここに、心より感謝の意を表します。
本書には、叶うなら初心者であった頃の自分自身に伝えたい、そんな知識やテクニックを詰め込んだつもりです。これからグラフィックスプログラミングを学んでみたい、グラフィックスプログラミングって何から手をつけたらいいのかと戸惑っている、そんなみなさんにとって本書が一歩踏み出すきっかけとなってくれたならうれしいかぎりです。
2019年12月 杉本 雅広
杉本雅広(すぎもとまさひろ)
元々は趣味で開発を行うサンデープログラマーだったが,JavaScriptのAPIの1つであるWebGLに出会い,日本語でのWebGL解説サイトの運営や勉強会の主催をスタート。現在ではWebGL実装を専門に扱う開発者として独立し,㈱はじっこを設立。WebGLやWebGLで利用するGLSL(OpenGL Shading Language)と呼ばれるシェーダ言語を扱うスクール(本書執筆時点で国内唯一)を運営するかたわら,WebGLの普及活動を行っている。
ホームページ:WebGL開発支援サイト
ブログ:WebGL総本山