どくらぼ

言いたいことを言います

ワシと WebGL 2016

なんですか

2016 年もあと少しで終わりですね。

今年のうちに書くべきであると思っていたテキストなどだいたい書き終わりまして、このブログに無駄に文章を打ち込む精神的余裕が生まれたので唐突に書きます。

2016 年という年を、自分なりに振り返ってみる内容で、技術的な話はあんまり出てこないと思います。ポエム的な何かです。

 

あらたなるステージ

WebGL は確か、2011 年くらいから徐々に使えるようになってきた技術だったと記憶していますが、それから早五年、やっと WebGL 2.0 が本格的に視野に入る状況になってきました。

2016 年という年を振り返ると、やはり一番大きなトピックはこれだったのかなという気がします。

WebGL 1.0 でさえ十分に普及しているとは言い難いですが、そんななかで WebGL 2.0 が登場してくることが、果たしてウェブという世界にとっていいことなのか、わるいことなのか、それとも大した意味はないのか。いろいろ個人的には思うところもあるんですが、まあ正直言って「大きな意味はない」というのが悲しいことに現実のような気もします。

というのは、WebGL を使いこなせる人がやっぱり少なすぎますよね。2.0 出るぜ! と言っても興奮するのは WebGL おじさんたちだけですしね。

それでも、個人的には WebGL 2.0 はとても楽しみな存在であることには変わりありません。一般ユーザーがその恩恵になにかしらの形であやかることになるのは、二年後くらいじゃないですかね。

要するに、私としては今までとやることは変わらないということです。地道に WebGL について語る機会を作り、粛々と、普及のために努力していこうと思います。

この段の最後にあえて WebGL おじさんとして一言、言わせていただけるなら「WebGL 2.0 は激アツだし最高」と思ってます。はやく普通に使えるようになってほしいなあ。

 

WebGL をどう啓発するか

私が WebGL を勉強し始めたのは、2012 年のころだと思います。

当時は、JavaScript もろくにわかってなかったので、まあ大変でした。WebGL に関する資料の大半は英語でしたし、やっと Chrome がデフォルトで WebGL を有効化させたくらいのころでした。

当時に比べると、日本語の WebGL に関する情報は結構たくさんありますよね。Qiita なんか見てても、今では普通に探せば大抵のことは日本語の解説つきで紹介されているかと思います。

それでも WebGL が普及している感じがしないのは、やっぱり成果物が出回ってないからじゃないかなと思います。なんていうか、three.js 使ってとりあえずやってみました! みたいなところから、一歩抜け出している和製 WebGL コンテンツは本当に少ないです。

でも、それって必ずしも悪いことじゃないと思ってます。

three.js 使ってて全然構わないし、むしろスクラッチWebGL バリバリ書くとか頭おかしいなこの人って思います。

要するに、もっとみんな気軽に WebGL 使ってみたらいいんじゃないかな。ウェブに 3D とか GPU 使った高速な描画とか必要ないと思う人は(あるひとつの側面から見たときに)時代に取り残されていけばいいと思いますし、なんか危機感持ってるなら、あくまでも選択肢のひとつとして、WebGL の可能性を探ってみればいいと思います。今は、3D 表現だけでなく、2D を高速にさばくためのライブラリとかもあります。要は、どう付き合っていくのかの問題ですから、触らずに無視してしまうのは、とてももったいないなと思いますね。

そういうことを無意識のうちに感じたからなのか、私の取り組みを振り返ってみると今年は GLSL の普及に結構ちからを注いだように感じます。

GLSL は WebGL を利用する上で欠かせないものですが、WebGL が先にあって、そこに GLSL を加えていくというのは学習コストが一気に上がりすぎてなかなか苦しいんですよね。そこで私が考えたのは、GLSL を逆に入り口にして、そこから WebGL に興味を持ってもらうことでした。

GLSL 単体なら、結構覚えることも少なくて済むし、その割に、すぐカッコいい絵が出るんですよね。成果につながりやすいというこの GLSL の特性をうまく引き出すことができたかどうか、それは私自身にはわかりませんが、ワークショップを開催したりスクールを運営したりするなかで、それなりになにかが得られた感触は少なくとも私のなかにはありました。

この GLSL を起爆剤とするスタイルは、今後もしばらく続けてみて、より良い形での WebGL 学習の導入として洗練させていけたらいいなと思っています。

 

ゲームエンジンWebGL

Unity などのゲームエンジンから WebGL 出力を行い、それによりブラウザ上でコンテンツを展開していくケースが増えてきましたね。

将来的には、それこそそういった、なにかしらのツールから出力された WebGL プロダクトが当たり前になっていくのかなとも思っています。だって簡単にカッコよくでき、管理もしやすいとしたら、それを使わないのはおかしいですもの。

WebGL を直接記述できる、コードを書く人間としてそういう流れに不安はないのですかみたいにもしかしたら思う人がいるかもしれませんが、私は一切感じてません。だって両者は全然違うものだと思うし。アナログな絵描きとデジタルな絵描きがそれぞれに全然異なるものであるのと、同じようなものじゃないでしょうか。(ちょっと違うかw)

ちょっとだけ困っちゃうのは、WebGL 出力されたソーシャルゲームに対する苦情がそのまま WebGL 全体の苦情になっちゃうことかな。まあ、古くてスペックの低い PC 使ってると、どうしても Unity の WebGL ビルドとか動かないよね。それはしょうがないし、どうしてもゲームとかをプレイしたいなら PC 買い替えてください。お金がないなら稼ぐなり節約するなりしてください。それも無理なら、諦めましょう。

あとは、Unity 様におかれましては是非「WebGL ビルドという名称」の変更をお願いしたいですね。WebGL に首まで浸かってる私個人の勝手なお願いなので別に Unity の中のひとたちに声高に訴えたりする気は一切ないのですが、調べ物とかするときにめっちゃノイズ混じるし、Unity 使いにとっても WebGLクラッチ勢にとっても、いいことがないですね。

今すぐには難しいかと思いますが、Unity について調べるひとにとっても厄介な問題だと思いますので、ゆくゆくはなにかしら、別の表現が出てくるといいなあと思ったりしています。

 

これからの WebGL とわたし

2017 年は、どんな年にしたいかなあ。

正直あまりビジョンみたいなのはないのですが、私と WebGL との付き合い方が大きく変化する一年なのかなと個人的には予想しています。

私個人はたぶん、WebGL にトライしてみたい人をよりしっかりとサポートする意味で、three.js の学習を個人的に進めていくことになると思っています。なんていうか、自分で使うつもりはなくても、というかないんですが、three.js について質問されたときに教えてあげられなくて、歯がゆい思いをすることが本当に多くなりすぎました。

three.js は非常に優れたライブラリだと思います。ただ、私個人にとっては、ぶっちゃけ要りません。それでも、そこをきっかけにして WebGL に入っていったほうがいい場合ってやっぱり多いと思うんですよね。むしろスクラッチWebGL 書けるようになっていく人たちは、wgld.org みたいなサイトがあれば勝手にやれるようになりますからね。

来年の WebGL スクール運営では、そのあたりがキーになると思います。

three.js から入って、徐々にカスタムシェーダとか使えるようにしていく、そんなアプローチでしょうか。

年々スクールのレベル、というか扱う範囲は、どんどん敷居を下げる方向に移っていってます。より初心者向けに、より簡単に導入できるように、修正されていっています。これは結局、私の自己満足でスクラッチWebGL の記述について講義しても、それが受講者の身につかなかったら意味ないなと毎回思うからです。

精一杯サンプルやテキストを精査し、全力で講義しています。それでも、伝わらなかったり、受講者が使いこなせるようにならなかったりするなら、私のほうが間違ってます。私自身にも、three.js の学習や、よりわかりやすい資料作成のスキルが求められるのは自然なことでしょう。

がんばらないとね。

 

2017 年にやりたいこと

2017 年にやりたいこと、あるいはやってみたいことを主に自身のために書き連ねて、この無駄にポエミーなエントリを締めくくりたいと思います。

こんな感じの適当な文章を最後まで読んでくださって、ありがとうございます。

 

  • 自身の WebGL 2.0 お勉強
  • 自身の three.js お勉強
  • 自身の WebVR お勉強
  • 自身の 3DCG 全般に関するお勉強
  • wgld.org の WebGL 2.0 に関する情報の拡充
  • wgld.org の GLSL に関する情報の拡充
  • GLSL の表現をテンプレート化してなんか知らんけど並べたサイト
  • パーティクルや GPGPU 的なマッチョなテクニック重視のテキスト
  • three.js における学習の助けとなるテキスト
  • Unity の特にシェーダにおける学習の助けとなるテキスト
  • より受講者のニーズに合わせたスクールの運営(three.js 取り入れるなど)
  • GLSL ファンが集うワークショップやアワードイベント
  • 関東都心以外での WebGL 普及活動
  • フロントエンド+WebGL なコミュニティを作る

プログラミングと楽しさの大切さ

なんか書き残しておきたくなったので、唐突にブログを書く。

 

プロ野球選手のイチローが、42 歳でメジャーリーグ記録に迫る勢いで今でも活躍しているというニュースをたまたま見かけた。

仮に私の体にイチローの魂が突然宿ってしまったらどうなるだろう……というめっちゃどうでもいいことを考えた。たぶん、明日の朝、私は早朝ランニングをしていると思う。そこまで想像した時に考えたのは、やっぱりすごい人にはすごい理由があるんだよなってことだった。同時にきっと、よく言われていることではあるけど遅すぎるってことはないんだろうなとも思った。

 

すごい人には、すごいと言われるだけの理由がある。

だから例えば、すごいと言われたいのなら、すごいと言われるだけの努力や生き方が、キレイ事じゃなくてやっぱり必要なんだと思う。

でも、努力してがんばってすごいと言われるのって実は本質から外れているような気がする。

たぶん、好きでやってる。イチローは好きで野球やってる。プロのプレイヤーとして野球やりたいからやってる。ここのところが、私の中でなんか引っかかった。

 

WebGL スクールを開催したり、WebGL 関連の勉強会主催したり、WebGL を広めたいという気持ちでいろいろ取り組んできたけど、最近のスクールなんかの運営方針はとにかく「WebGL 楽しいと感じてほしい」ということがメインテーマになっている気がする。

初めての 3D プログラミングはとにかく難しいイメージがあるし、実際難しい。がんばった割にやっと作れるようになったのが平行光源あるだけのシーンにトーラス浮かんでるやつとか、普通にあると思う。そこから先の、自分なりの表現に 3D 使っていけるところまで到達できる人ってごく一部で、多くの人がやっぱり難しいわこれ無理だわってなってる気がするし、これは事実と大きく外れてないと思う。

 

私は自分が WebGL 好きだったから、続けてこれたんだろうなって割りと本当に思っていて、初めて三次元の絵がブラウザ上で動いてるの見た時は、ほんと興奮した。

そういう楽しいとか嬉しいとか、そういう気持ちを、スクールでは受講者に見つけてほしいと思って講義してる。私ができることってのは、その入口に立ってもらうところまでの、道案内だけなんだろうなと思う。

 

WebGL はちょっと古くさい API で、最新の 3DCG 技術からは遠いところにあって、しかしそれでも、ブラウザだけでこんだけのことができるなんて、本当に夢のような技術だと思う。

私と関わった人や私の講義を受けた人すべてを、漏れ無くイチローにすることはできない。というより、それは結局最後は個人個人の問題だと思う。

それでも私は、せめて自分自身はイチローのように、みんなからすごい人だなって思われ続けなくちゃいけないのかなって思った。私自身が楽しく WebGL と向き合って、ひときわ輝いて見えるとしたら、仮にそれが虚構や精一杯の見栄っ張りだったとしても、それをきっかけにして WebGL の楽しさに気がつく人が増えるかもしれない。

なんかそのためだったら、ちょっと大変でもやっぱり総本山毎日更新したり、どこかの誰かに教えるために先に新しいこと勉強したりなんてことも、続けていけそうな気がする。叩かれてへこむこともあるし、うまくいかなくて悶々とすることもあるし、そもそも休日全然ないけど(笑)それでも続けていけそうな気がする。

 

イチローを見ていて、そんな飛躍した妄想を抱いて、それでもイチローから勇気をもらった気がした。

私も誰かに勇気や楽しさを、伝えられる人になりたい。

 

2015 年の振り返りと次なる 2016 年へ向けてという名の壮大なポエム

## いろいろ振り返ってみる

みなさんこんばんは。

こんなブログ誰か読んでるのか疑惑がありますが、所詮ポエムのようなものしか最近は書いてませんし、自由にやればいいかなと思って自由に書きます。

はじめに断っておくと、無駄に長いです。

 

さて、2015 年は、私にとってはとても大きな節目の年でありました。その最たるものが、本職が開発者という肩書となり、これまでのエセエンジニアから一応名ばかりのエンジニアにジョブチェンジできたことだと思います。

思えば、私がプログラミングに興味を持ったのは 20 代も後半に入ってからのことでしたし、初めて触った OS は WindowsXP でしたし、なんのために触れたのかと言えば物流業務で出荷したクライアント情報を入力して Excel で住所録を作るためでした。

当時、パソコンなんて一部の優等生かビジネスマンかなんかが使うあれだろくらいに思っていた私は、数式を入力しただけで突然数千件の数値を合算してくれたりする様子を見て Excel って賢すぎんだろ! と驚き、VLOOKUP とかいちいち名前が無駄にキザすぎだろとか思いながら、セルに数式を入力してはニヤニヤしていました。

 

f:id:doxas:20151230124456j:plain

 

しかも Excel には VBA なるプログラミング環境が付属しているというのを知り、さらに Excel にのめり込んでいきました。インターネットというやつの存在も当然知ってはいましたが、当時はろくに使いこなすこともできず、また VBA を勉強した時はお金もなくて、今のようにささっとネットで調べたりはせずに図書館で参考書を借りてきたりしてプログラミングをしていました。懐かしい。

余談ですが、VBA は初めて触れるプログラミング環境として適切だと、当時は思っていました(今はどう思ってるかはあえて言いませんけど!)。

私はもともとかなりぼんやりとですがゲームとか作ってみたい欲求があったこともあり、VBA でゲームみたいなものとか作って、ほそぼそとひとりで遊んでいました。ただ次第に自分で遊んでいるだけではあんまり満たされなくなってきて、これを公開するためにブログというものを使うようになって、そこから CSS やら HTML やら覚えていきました。これもまた懐かしい。テンプレート CSS をよくわからないままいじくったり、していましたね。

そして、徐々にブログの扱いにも慣れてきた頃、ウェブという世界では javascript なる魔法が使えるということを知り、VBA しか使えねえというのもどうなのと思い始めていたことも手伝って一念発起 javascript をやってみることにしました。

実は VBA を使ってゲームを作っていた頃、VBA から COM で DirectXAPI を叩いて、Excel ブックを開くと突然 DirectX 製のフルスクリーンのシューティングゲームがスタートするという夢のようにクッソ意味のないプログラムを作ったりしていたこともあり、3D 開発にはずっと興味がありました(Direct Input とか使ってゲームパッドにも対応していて名誉ある「才能の無駄遣い」という称号をいただきました)。

ですから、javascript で 3D の API が叩けるという WebGL に出会ったとき、大変に興奮したのを覚えています。

しかも使い方を覚えたくて検索してみても、まったく情報ないじゃないですか。これには実際問題とても困りましたが、同時になにか、神の啓示のようなものが聞こえた気がして「このジャンルなら先駆者になれんじゃねえの」というどちらかというと悪魔の囁きのほうに導かれて wgld.org を開設するに至りました。

初めてレンタルサーバー借りたりして、初めてドメイン取ってみたりして、ふわふわしながら 3D 数学もよくわかってないのにいきなりテキストを書き進めていきました。当時、テキストを 10 回分くらいまでかな、事前にタイトルや内容を精査して今の自分でも書けるなと思ったような記憶がうっすらあります。

ハッキリ言って、この頃の私はなぜ内積を使うとライティングができるのかわかってませんでしたし、インデックスを時計回りで定義するもんだと勘違い(DirectX はそうですね)していましたし、javascript の prototype もわかってませんでしたし、onload っておもむろに書いてそこに関数突っ込むとページのロードと同時に走るの不思議だけどなんでなんだろくらいのレベルでした。それであのサイト始めたとか今考えると素敵すぎますね。

そんなこんなでよくわかってないままサイトに黙々とテキストを書き足していくと、だんだん先生(Google)がいろんな人達を連れてくるようになってきて、なかにはやんわりと優しくマサカリを二刀流でぶん投げてきてくれるような素敵な紳士のみなさまなどもいらっしゃいまして、おかげさまで私は徐々にレベルアップしていったように思います。(画像はイメージです)

 

f:id:doxas:20151230125730j:plain

 

思うに、こうやって意識的にせよ無意識にせよ、なにかしらの形で wgld.org というサイトを通していろんな方が私に関わってくださったり興味を持ってくださったりしたことが、今日の私を錬成してきたのだと思います。

本当に、みなさんいつもありがとうございます。

wgld.org は 2016 年を迎えれば丸三年運営したことになります。たった三年なのか、もう三年なのか、わかりません。

でもこの大事な大事な三年間のなかでも、特に今年は大きな意味を持った年になりました。感謝の気持ちも込めて、wgld.org は先日デザインを変更したんですが驚異的にいろんな意味で見づらくなっており私もびっくりしてます。(後悔はしてない)

 

## これからの WebGL

そんなこんなで幸か不幸か、私は wgld.org のおかげもあって多少有名になり、WebGL スクールも毎回満員とはいかないまでもほぼすべての席が埋まるという状況で、私はこれについても本当にみなさんには感謝の気持ちしかありません。

せめて、スクールの講義内容やサンプル、あるいは運営しつつのサポート体制などで、少しでも質の高いものを提供していくことが私の使命だと思っています。

2016 年は、引き続きスクールは開催していく方針ですが 2015 年の運営スタイルをそのまま引き継ぐものにはならない予定です。というのは、これまでのスクールが失敗であったなどとは思っていませんが、より良い講義、より受講者の利益になる講義を考え続けていると、やはり同じように繰り返していくことが正しいとは、まだまだ言えない状態だと思うからです。

つまり、まだ WebGL の技術、ひいては 3D 数学や GLSL を解説していくという行為自体が、世の中的にも自分的にも、全然煮詰まっていない(鉄板の正解が見えていない)と思うのですよね。毎回スクールではアンケートを取らせていただいていて、多くのかたがすごくわかりやすかったとおっしゃって下さいますしそれはとても嬉しいのですが、感触として、もっともっと直感的に理解できるものにしていかなくてはならないのだと、私自身は思ってしまうのですね。これは性(Sa・Ga)なんでしょうかね。(チュイーン )

 

f:id:doxas:20151230125541j:plain

 

それに、ウェブという流行り廃りの流れの早い世界では、ひとつひとつを細かく吟味して、少しずつでもより良くなるよう改善を加え続けていかなくてはいけないと思っています。これは実は、スクールという枠組みだけの話ではなくて「WebGL そのもののあり方」も含めた話でもあります。

たとえば、昨年末を思い出してみると、iOSWebGL が解禁になった、これが私にとって非常に大きなニュースでした。

しかし思い返してみれば、この一年で WebGL が本流に乗ったかというと、いやまだもう一歩という感じがしないでもない、というのがみなさんにとっても本音ではないでしょうか。私も、そう思います。

今年は Unity などのサードパーティツールや、HTML5 に特化したゲームエンジン、あるいは WebGL を扱うためのライブラリなどが、WebGL という舞台の上に次々と登場してきたような気がしています。それこそ雨後の筍かよと思うくらい、本来の WebGL の本流とは外れたところで、多くの人にとって謎のキーワードとして WebGL という言葉が使われ、よくわからんけどすごいらしい感とか、よくわからんけどなにそれ感を撒き散らしていたような感じがします。

WebGL はそろそろ、扱い方に気をつけないといけない段階に差し掛かっているのだと個人的には思います。ただひたすらすげえすげえ言ってればいいという状態ではなくなってきていますよね。それに、ブラウザゲームが重いのは WebGL のせいだとか(まあ間違ってないですけど)、Unity で WebGL ビルドにすると動かねえとか(知識ない人からすりゃまあそういう感想になりますよね)、個人的にはいろいろ歯痒い思いも募ってきたりして、結構やるせない気持ちになることも増えました。

WebGL と、どんなふうに付き合っていくのかは自由です。その中身をよく知ろうともせず Unity の出力する WebGL ビルドに文句をつけるのもまた、自由です。フルスクラッチで素晴らしいシェーダを書いてもこんな重いのありえんわーと言われるかもしれませんし、three.js 使ってかっこいいサイト作っても実務では全然意味が無いかもしれませんが、とにかくどう使おうがそれは個人の自由です。要は、つきあい方の問題であって、どう付き合っていくのか、どう使いこなしていくのかは、それぞれが考えればいいことなんですよね(めっちゃ当たり前のこと言ってますけど)。

要するに何が言いたいのかというと、WebGL はやっとこさ、万人が手に持つことができる武器になりつつあるということです。

誰もが持てるようになれば、そりゃ文句を言う人だって増えます。同時に、当然ながら見事に使いこなせる人や、使いこなしたくてもそれができずに困っている人も、増えていくでしょう。そんななかで私はいったい何をしていくべきなのかを考えるとき、やはり、2015 年までにやってきたことと全く同じことを、粛々と進めていればいいというわけには、いかないのですよね。これもまた、気持ちの問題なのかもしれませんが。

 

## だがしかし

しかし、WebGL が万人に平等な武器となったとは言っても、実際のところ WebGL は既に、ウェブのお荷物という存在になり始めているような気がしています。どちらかというとユーザーの体験を阻害するものになってきている(場面もある)という気がしてしまうのですよね。

少し前に Flash バリバリのサイトを見るとまたこのパターンですか的な感慨を覚えたのと同じように、WebGL もそういう気配を、既に放ち始めているように正直思っています。

全然そんなことはないのかもしれません。本当のところは。

でも、なんとなくそんな気がしてしまうのは、私が WebGL に寄り添いすぎてしまっているからなのでしょうか。

完全に私個人の見解を述べるとするなら、これからの WebGL はもっともっとウェブと一体になっていかないといけない気がしています。それがそこにあることに、大きすぎる意味はもはや要りません。当たり前のように、使われるものになっていってほしいと今は思っていますしそういうフェーズに入っていると思います。

ただ、そのためには残念ながら WebGL 自身がもう少しその姿を変えていく必要があって、もっと気軽に、もっとさりげなく使えるものでなくてはいけないと思います。たとえば jQuery や、そのプラグインがそうであったように、デザイナレベルの人たちでもちょっと調べてコピペすれば、簡単にそして自由にサイトにそれを導入することができるレベルのものに、WebGL はなっていく必要があると思うのですね。

コアな、それこそフルスクラッチの濃い実装をしたい人っていうのは、そもそも使えるんですよ。しっかり最適化して、しっかりユーザー体験に配慮して、しっかりデモを作れるんですよね。問題なのは、よくわからないままよくわからない実装をして、WebGL を使っているだけで悪いことが起こっているかのような錯覚を生む、そんなサイトが量産されてしまうことだと思います。WebGL に限らず、3D はとっても難しいですよね。だから、実装した本人にとっても、つらい思い出にしかならなかったりするわけですそれでは、やっぱり良くないです。

提供する側もされる側も、いずれにとっても価値ある体験や実績を生むひとつの道具として、WebGL には存在していてほしいと私はどうしても考えてしまいます。これは欲張りすぎる発想なのかもしれませんが、少なくとも私は、そのために何をすべきかを考えないといけないなと自分自身に対しては思いますし、そうならないための努力を、これからもしていくつもりでいます。

 

f:id:doxas:20151230125015j:plain

 

一重に、2016 年は私以外の発信者をもっとサポートできる体制を作っていきたい。それがどんな方法なのかは、まだ全然私自身わかってないんですけど、なにかやりたいなと思っています。そして、そのジャンルは WebGL のスクラッチ実装だけに留まる必要もないと思っています。

Unity を介して WebGL を扱う方法や知識を発信することでもいいと思うし、three.js を使った実装の仕方でもモチロンいいと思うし、それこそ GLSL だけに特化して表現を模索する方法でも、いいと思うんですよ。

私が最も憂慮しているのは閉鎖的なコミュニティが生まれてしまったり、誤った認識や知識が一人歩きしていってしまうことです。多くの人が自然と自分の実装したものやその技術を発信(それこそひけらかすくらいの勢いで)したくなるような、そんな雰囲気を作るにはどうしたらいいんだろうかと、その答えのいかにも見つからなさそうな命題を考えるのが、最近の日課のようになっている気がします。

WebGL が、そこに存在していることを感じさせないような自然なものになってほしいと思う一方で、こうして知識を発信する人が増えてほしいと考える……これはある意味矛盾しているような気もします。難しいです。

 

## より多くの可能性を

そんなこんなで、私は結局のところ「私一人の発信力」というものをもう信用できなくなってきていました。影響力とか、発言力とか、そういう意味のことではなくて、それをやる価値の大きさという意味で、私はもっと発言する人の絶対数を増やすべきだと感じるようになりました(なんだかめっちゃ上から目線で書いてるような感じで申し訳ないですが)。

今年最後の GLSL スクールで「学割」なんて制度を作ってみたりしたのも、そういう思いからでした。

若い人たちって、すごいんですよね。びっくりしますよね。自分が年老いたとは思わなくても、彼らを見ていると、私は年取ってきてるんだなってわかりますよね。私個人はさっさと年取って隠居したいタイプなので経年になんの悲しい感慨もないのですが、若い人たちのあのすごさに触れると、もったいないという気持ちやもっと輝かせてやらねばなんねえ感がすごいんですよ。

Twitter を通じて私にアクション起こしてくれる若い(と思われる)人たちが、wgld.org めっちゃありがたいですとか言ってくれると、とても嬉しい。ほんとに嬉しい。これはほんとなんですよ。でも、もし彼らがその先にある自己成果の発信、という行動にまで移れてなかったとしたら、もちろんそれはその人の性格もあるでしょうから一概には言えないとは言っても、コミュニティや界隈の雰囲気の問題だと思うのですよね。

いい物を作れる道具があって、それを発信できるいい場所があって、お互いに刺激しあって成長していける雰囲気が必要なんだと思います。何より気軽に発信できる「流れ」みたいなものが、今もっと高めていかないといけないものなのだと個人的には感じます。

もちろん若い人だけじゃなくて、確かなスキルを持っている渋カッコイイ大人の人たちにももっと発信していってもらいたい気持ちはありますよ。でも、若いうちからそれをやってきていない人だったら、やっぱりこれから先も発信しませんよね。それが年をとるってことですよ。

そこに淡い期待を抱くことより、若い世代を輝かせることにもっと注力すべきです。やらない理由はいくらでも見つけられますし、それは年を取れば取るほどに、多くなっていくでしょう。無鉄砲でもなんでも、とりあえず持ち合わせの武器でぶっ放していくような、そんな人がもっと増えていかなくちゃいけないと個人的に思うわけです。

それは言葉で言うほど簡単なことじゃないし、もし失敗したらつらいのは当の本人なわけですから、私のできることは限られています。でも、そういう人が困ったときに支えになるくらいのことはできるかもしれないし、あるいはなにかしらの挑戦をするためのキッカケを作ることくらいはできるかもしれない。向き不向きもあるし、続けていけるかどうかは未知数でも、一回くらいやってみようって思える舞台や雰囲気は、私が作ってあげられるのかもしれない。そんなふうに、とてもとても傲慢ですが思ってしまう。

なにをするのが、正解なのか。

どうしてあげるのが、一番いいのか。

いくら考えてもわかりません。

私自身も、失敗して傷つくかもしれない。それでも、傷つくなら多少の年の功でするりと受け流せる大人のほうがいいですし、年寄りはせいぜい弾除けの盾になったり、あるいは彼らの通る道のレールになって轢かれたほうがいいんじゃないかなと思います。でもそれをやるにも、私自身がもっと強くなったりしていかないといけなくて、難しいですね。いろいろと。

 

## とりとめのない感じになってきたので

勢いにかまけてガシガシ書いていたら話がとりとめのない感じになってしまいました。

あなた WebGL ひとつでよくもここまで真剣(?)に話できますねキモいわと自分で感じ始めたので、そろそろやめようと思います。

実際のところ、2016 年も、私は引き続き WebGL 普及のために尽力していきたいと思っています。しかし、その方法や、取り組むべき課題は、やはり 2015 年とは違ったものになるでしょう。

より手軽に、誰にとっても扱いやすいものへと、WebGL を変えていきたい。あわよくば、そういう活動や発信を、もっともっと多くの人が行ってくれるような雰囲気やコミュニティを作っていきたい。まとめると、そんな感じになるでしょうか(それならこの長文のブログはいったいなんだったのか)。

若い世代が活躍したいと思えるような、夢のある世界にしたいですね。

がんばります。

今年も一年間、ありがとうございました。来年もよろしくお願いします。

 

最近の話とこれからの話

最近の話

先日、CEDEC に初めて参加してきました。

CEDEC に初めて参加すると同時に、初登壇もさせていただきました。

正直ゲームを中心としたエンターテイメントの技術の最先端が集結する CEDEC というフィールドで、WebGL をメインにした自分の発表に、どれだけの価値があったのか……ちょっと、いやちょっとどころか、かなり不安がありました。

しかし当日は、たくさんの方がセッションに来てくださり、またセッションの後も話しかけてくれたりするなどいろいろあり、やはりセッションに応募してよかったなと感じられる初めての CEDEC となりました。セッションに来てくださったみなさん、声をかけてくれた方々、本当にありがとうございます。

またこれは余談ですが、登壇者だけが参加できる懇親会というものが CEDEC にはありまして、これが非常に素晴らしかったですね。CEDEC に登壇するレベルの、高い次元にいる方たちとあんなふうに交流できるなんて最高の場だと思いますね。WebGL に注目している方も意外といらっしゃって、とても新鮮な、貴重な経験ができました。

これを読んでいる方たちがどんな立場の方なのかはわかりませんが、もしチャンスがあったら CEDEC などのイベントには積極的に参加することをオススメします。特に、登壇者として参加することは非常に大きな経験になります。臆せず動いてみる、これは本当に大事なことですね。

 

さて話は少し変わって、最近引っ越しました。

ずっと茨城に住んでいて、都内に出かけていく感じでどうにかやってきていたのですが、いろいろ不便なことも多く思い切って引っ越しました。日本橋のあたりに引っ越したので、渋谷にも 30 分程度で出ていけます。素晴らしい。

これまでは少々遠方ということもあり、なかなかいろんな方々と交流することが難しいシーンも多かったですが、都内在住のエンジニアのみなさん、ぜひご飯なり飲みなり、ご一緒しましょう。せっかく都内に移り住んだので、もっともっといろんな方と交流したり技術について語り合ったりしていきたいです。ぜひよろしくお願いします。

 

また、引っ越しに伴い、実は仕事に関することも環境が変わりました。

これまでは、開発とはまったく関係の無い業界でずっとガテン系の仕事をして過ごしてきました。これ、本当です。開発のお仕事はあくまでも副業という形で、半分フリーランスみたいな感じでした。

本業はと言えば、時には警備員として、時には物流倉庫でフォークリフトを乗り回して、はたまた時にはパチンコ屋さんのホールでドル箱を下ろしていたりと……

私を知る多くの人にとっては信じがたいかもしれませんが、ずっと趣味だけで続けてきたプログラミング……これがやっと本職になりました。たいへんめでたい。

 

これは完全に個人的なことなんですが、私自身は、自分にエンジニアとしての実務経験が無いということがずっとコンプレックスになっていました。どうしても、自分はしょせんちょっと頑張ってるだけの「素人」であり、本格的な開発の現場では役に立たないみたいな、そういう感覚が本人のなかにはずっとあったんですね。

お会いする方たちはみんな、当然ながらウェブの doxas としての自分を見ていますから、そんなことないですよって言ってくれていたましたが、これでやっと、私自身が私自身に、納得して自分がエンジニアなのであると言い聞かせられるかなと思っています。まあしかし、それも気分の問題ですしかなり先のことになりそうな気もします。

 

WebGL スクールや普及活動

職場環境は変わりましたが、WebGL に関する活動については今後もこれまで同様に続けていけるように、雇用先に無理を言って調整していただきました。これには本当に感謝の気持ちしかありません。関係者の方々には本当によくしていただいて、助かりました。ありがとうございます。

私は一人のエンジニアでありたいという思いと同時に、WebGL をもっと日本に根づかせるための活動をしていきたい、そんなふうに思っています。正直なところ、これはどうしても譲れない部分でした。これはややもすると非常に欲張りなことで、両立するのは正直難しい部分も多いとは思うのですけれど、自分の気持ちと体が続く限りは、地道に活動していきたいなと思っています。

WebGL を少しでも多くの方々に知ってもらいたい、その無限の可能性に賭けてみたい、その思いは今も変わりません。そのために自分ができることは、これからも続けていきたいです。

 

直近では、WebGL スクールのショート版、しかも GLSL のシェーダの記述に特化したものを年内に開催したいと考えています。

これは、第一期、第二期と WebGL の基礎講座という形のスクールを運営してきたなかで、意外と「シェーダに特化した内容」に対する需要が高そうだと感じたからです。

もう少し詳しく言うと、第二期のときに特に顕著でしたが、Unity などのゲーム開発用のツールを使うことが日常的な業務という方々でも、シェーダや基本的な 3D 数学などに特化した内容を深く理解したいと考えている方がいらっしゃるということ。確かに、WebGL ならそういった 3DCG の基本を学ぶのにも、シェーダの記述について学ぶのにも、いずれにも最適な環境だと言えますね。

ツールやライブラリを利用すれば、確かに WebGL を利用する事自体はだいぶ簡単になってきています。しかし、本当に凝ったことや本格的なことをやりたい場合には、絶対に 3D の基本やシェーダの記述についての知識が必要になります。これは恐らく、一般に思われている部分とちょっと乖離があって、3D は基礎がとてもとても大事です。これはシェーダにも、同様に言えることなのかもしれません。

そんなわけで、今回はガッツリと WebGL 全般の基礎を扱う通常のスクールとはちょっと違う形で、短期の GLSL 特化型スクールを開催しようと思い至りました。第一期や第二期に参加された方にとっても有益となるような内容にできたらと思いますが、もちろん、いきなり初めて参加された方にとっても難しくなり過ぎないように、講義の内容はかなり吟味して作っています。

スクールに関してもうひとつ忘れてはならないのは、それが実際に「業務に活かせるもの」であったり「自分のやりたいことの実現に活かせるもの」であることです。

これは半分は受講される方々自身の問題かもしれません。しかし、講師として貴重なお金を払ってもらって提供するものである以上は、実務に、あるいは夢の実現に、直結しないまでも大きく役立つものにしなければならないと私は考えています。

WebGL ならこんなこともできるんだぜ! ということを示すだけなら、それは講師の自己満足でしょう。如何に、それを受講者の方々の「実用的な引き出しのひとつ」にしてもらうことができるか、これこそがとても重要なことなのだと思います。

 

今のところ、10 月の末から 11 月の始めにかけてを開始時期として考えています。

隔週土曜日開催で、年内で全 4 回くらい、12 月の中旬までの期間での開催になるような感じですかね。内容は前述のとおり、シェーダの記述に特化したものにするつもりで、ポストエフェクトの考え方はもとより、GLSL Sandbox や shadertoy で見受けられるシェーダだけで描く二次元の描画、あるいはレイマーチングなどを利用した三次元表現などを扱うつもりです。

レイマーチングの基本は wgld.org でも扱っていますが、どうしても文章だけでは難しい部分もありますね。それに、シェーダしか使っていない……と言われても、そもそもシェーダってなんやねん! というふうに感じている人もいるでしょう。そういったシェーダとはそもそも何者で、利用することで何が嬉しいのか、最終的には自分自身でシェーダを記述できるようになるためにどうしたらいいのかなどの内容を、今回のスクールでじっくり解説できたらと思っています。

 

また、今回の短期スクールは、初めての試みとして「学割」を導入する予定です。

中高生はもちろん、大学生の方なども学割適用で気軽に参加してもらいたい、というのが狙いです。

自分の周囲で WebGL に挑戦しているたくさんの方々のうち、やはり学生さんの吸収力やそこから発想をふくらませる応用力は段違いに優れていると感じます。これはやはり、若さなのでしょうか。彼らの大きな大きな可能性が開花することのきっかけを作ることができたら、これほど嬉しいことはありません。

 

スクールの告知は近日中に行います。

会場の都合などもあり完全先着順になるので、その点はご了承ください。

前回の第二期同様に、たくさんの方々にご参加いただけるように、会場の手配なども含めて、誠意資料やサンプルを作成して準備しています。年内に開催できるスクールはこれで最後になると思うので、気合いを入れて臨みたいと思っています。

 

というわけで、公私共に今後ともがんばります。

ちょっと遅れて振り返り

2015 年 5 月より行っていた WebGL スクールの第二期。

先月 7 月までの足掛け三ヶ月間が無事に終わりまして、少し遅れましたが今更ながら振り返ってみることにしました。

 

まず、第一期は平日の夜、二時間半で毎週行うというスケジュールだったのですが、これを第二期では土曜日で隔週開催する形に変えました。これは結果的には、概ねいい判断だったのではないかなと思っていて、なかには平日のほうが都合がいい受講者の方もいらっしゃったみたいなのですが、全体に週末を利用したスケジュールとすることで、気持ちに余裕を持って参加できた方が多かったのではと思います。

今後スクールを開催する際にも、やはりベースは週末になるのかなという感じがしました。自分の感覚からすると土曜日がいいように思うのですが、日曜日とかのほうがよかったりするのかな?

 

開催日程を隔週にして、土曜日に行うという判断はおおよそ良かったと思うのですが、逆に失敗したかなとちょっと感じているのが、一回あたりの講義の時間です。

今回は一度の講義が 5 時間の長丁場になる形だったのですが、これはちょっと長すぎたかなと、講師として受講者の方々を見ていて感じました。やはり、これだけの長時間を新しい知識の詰め込みに使ってしまうと、休憩があるので実質 4 時間程度ですがちょっと苦しいですね。そのあたり踏まえて考えると、休憩を挟みつつの 3 時間、長くても全体で 4 時間までかなと感じました。あまり休憩時間が長すぎても気持ちが切れてしまいますし、このあたりは調整が難しいですね。

 

あくまでも講師目線で感じたことと言えば、講義の時間以外の部分でどれだけみなさんをサポートできるか、という点がなかなか悩ましかったです。

特に、なにかしらの「意図」を持って受講されている方ほど、スクールの内容が自分の意図した方向性と違っていたりすることがあったような気がしていて、そりゃ完璧に全員が超満足という内容にすることは難しくても、もう少し何かできなかっただろうか、というふうには感じます。

 

たとえば、これは第一期のときにもやりたくてなかなか難しかった部分ではあるのですが、あらかじめ予習することを想定したテキストや宿題の作り方、あるいは復習することに特化した課題の出し方など、これらは今後も研鑽が必要だと感じました。加えて、スクールの最初期の段階で、各個人の最終目標を収集しておくことが、講師としては必要なのかなと今は感じています。そうすることで、個々の目的や目標に合わせたもっと細かなアプローチができるような気がしています。

まあ、一人で運営しててどこまでやるのか、というのは判断が難しいところではあるのですけれども。

 

また、受講料についても今回あらためて考えさせられました。

というのは、受講者の方々の意見や感想を聞かせていただくと、あまりに安すぎてびっくりしたという人と、そこそこのいい金額ですよねという人と、いらっしゃるんですね。これはどんな金額に設定しても大なり小なりそうなのでしょうけれども、難しいですね。

講師側の本音を言えば、とても破格に安い設定だと思っています。正直に言えば、ですけど。

 

ただ、ハッキリと言っておきたいことが二点ほどあって、ひとつはいわゆる一般的なスクールや研修の価格帯に設定すると、若い人たちにとっては参加が難しいものになってしまうのではないか、という危惧です。このスクールの運営を行っている最大の目的は「WebGL をより身近な技術に・より多くの人に使ってもらえるように」というところなので、むしろ若い人たちにどんどん参加してほしい。となると、そんなに無茶な金額設定にはしたくないという心理が働きます。

しかし、言いたいことのもう一点として、極端に格安な受講料をあえて設定しないのは 「3DCG は中途半端な気持ちで始めると逆にアレルギーになってしまう」という感覚を自分が持っているからです。けして安くない受講料を支払うことで、腰を据えるということは人間誰しもあると思います。WebGL は手軽に始めることができるとは言えれっきとした 3DCG の技術を必要としますから、取り組むには覚悟がいります。こればかりは、オブラートに包んでも仕方のないことなので、そこは受講料にも反映させる方針でやっています。

いろいろ言いましたが、これは塩梅が本当に難しい部分ですね。自分の所得に関わってくることですから本音を言えばキリがないのですが、しかし本当に大切にしたいのはまずなにより WebGL をひとりでも多くの人に触ってもらうことです。その気持ちは、今後も失うことなくできる限り続けていきたいなと思っています。

 

それでは少し話題を変えて、今後はどうするつもりなのかについても、少し書いておきたいと思います。

実は今回のスクールは、第二期という形ではありましたが、利用したサンプルやテキストについては第一期とはまるで違います。少し言い方を変えると、自分でも驚きですが「全部新たに書き下ろし」ました。

 

この資料作成に掛かる時間というのは馬鹿にできなくて、隔週開催とは言え、開催前からの準備も入れるとかなりの時間を投資しています。これは、第一期の反省点を踏まえて、より優れた内容に仕上げるための、いわば自分自身に対する自己満足の時間的投資でした。

第一期のときに手を抜いたつもりはありませんでしたが、初めてのことでしたからそれなりに反省点も多かったのは事実です。少しでも、そんな不甲斐ない自分に対する穴埋めをしたい気持ちが、資料の全差し替えという暴挙を決行させました。

今になって考えてみれば、これは結果的には正解だったと思っていて、仮に次期スクールを開催すると考えた時、あくまでもそれが「基礎講座」であるならば、今回の内容をベースにした少々の修正でかなり質の高い講義を行うことができると思っています。

ちょっと考えてしまうのは講義内容が基礎のその先、発展形の内容を中心にしたものになる場合です。これについては、またゼロから構築せざるを得ないと思いますね。とは言え、今回の第二期の内容でも後半はかなりレベルの高いことをやっているので、いずれにしても一度分解して構築し直すような、そういう作業が必要なのかなとは思います。

 

そういったことも踏まえつつ、第三期は、必ず開催したいと考えています。

うまくいけば、年内に第三期をスタートできるかもしれません。

それにできることなら、短期決戦的な内容にはなってしまうと思いますが、関東以外への遠征もやってみたい。いやらしい話、この遠征を考える場合に限っては、時間的にも費用的にも都内で開催する場合と比較して受講者に無理を強いることになってしまいます。それでもやるだけの価値があるのかどうか、見極めなければならないと思っています。このあたりも、悩ましいところです。(私がもうひとりいたらいいのに!!)

 

最後に、第二期の受講者のみなさんに(この記事見てるかわかりませんが)この場を借りてお伝えしたいことがあって、スクールの最後に書いてくださったアンケート、本当にありがたかったです。

励みになるようなメッセージ、隠さず正直に書いてくれた不満点やご意見、どれもが心に響きました。

WebGL スクールは当然のことながら私から第三者へ技術や知識をお伝えする場ですが、同時に私自身もたくさん成長させてもらっています。それに、第一期のときも含めて、私がスクールの運営を通じて得た出会いは、どれも素晴らしいものばかりです。なんだかキナ臭い感じに聞こえると思いますが、これは本当に本当に本当なので、あえてそのまま書いてます。

 

これからも、少しでも多くの人に WebGL の魅力を伝えていきます。そしてその活動のなかで得たたくさんの有意義な出会いを、私は大切にしたいです。

 

スクールを主催して、本当に良かったと思っています。これからも、どこかのだれかのために、そして自分自身のために、WebGL と真摯に向き合いつつがんばって続けていきたいなと思います。

 

近況的なやつ

久しぶりにブログを書くなあ。

 

最近は本当にやることがいっぱいあって、あまり余裕がなくて個人ブログを更新するどころではなかった。いろいろなことを並列化して作業するというのは、人間の脳にはかなり難しいことだなというのをあらためて感じた。

 

まず昨年末から今年の初めにかけては、WebGL スクールの第一期と平行して、既に書籍の執筆を開始していた。正確には今年に入ってから本の話が出てきたんだけど、実質ほんの2、3ヶ月で全部書いたと思うと、我ながら無理あるなあと思う。

その間には、WebGL スクール以外にも jsstg というシューティングゲームの企画や、その企画と連動した勉強会の主催、さらには TokyoDemoFest 2015 なんかもあったわけで、もっと言うと HTML5 Conference 登壇もあったし、こっそり動いていた WebGL の案件とかもあったし、WebGL 総本山は意地になって毎日更新したし、wgld.org も一回くらいは無理やり更新したし、俺はいったいどれだけマルチでこなしているんだという感じ。

 

問題なのは、そのどれもが現状ではほとんど現金に変換されていない点かなあと思う。自分が楽しいのと好きなのとで、こんなふうに活動することが苦しくはないというのが最大の、そして唯一の救いであって、交通費やらなんやら考えるとむしろマイナスでしかなくこのあたり相当大きな課題なのではと思う。

 

ものすごくプライベートな話をすると、今年はいろいろありそう(引っ越したい)だから貯金しないとなと思っているのにもかかわらず、現実はそういう状況だったために、これはいよいよ経済的にやばいぞという危機感があった。

確かに書籍の執筆作業はいつかは多少なりとも収入になるんだけども、まず今すぐじゃない上に、生活の柱になるレベルの収入にはならないし、忘れた頃にやってくるサプライズお小遣いと思うほうが精神衛生上よろしい。また多くの場合、登壇というのは箔にはなるが金にはならんというものであるし、私のサイトは技術メインのものばかりで、EC サイトのように継続して収入をもたらしてくれるタイプのものではない。

 

このままではワシ、枯れてしまうかもしれん。そう思ったので、無い知恵を絞っていろいろ考えてみると、やはり私にできるのは WebGL の啓蒙活動だなというところに帰結する。WebGL 案件でバリバリ腕をふるうことはできるんだろうけども、どうしてもいち会社員でしかない今の状況では、それも難しいなあと思う。日中は会社員としての仕事をしつつ、都合よく WebGL 案件の対応をするときだけ業務を外れるということは無理だ。これはもう会社員としての業務時間外で可能な範囲でやるしかないと思う。必然、日中に細かい調整などが必要となるような、スピード感のある WebGL 案件を受注することはできず、各方面にはいろいろご迷惑をお掛けしておりますすみませんすみませんごめんなさい。

WebGL 案件をどんどん受注してというのができないのなら、やっぱりスクールと、イベントなどへの登壇と、そういったことを地道に続けながらやっていくのが、自分の使命感にも沿っていてなおかつ自分自身にも多少なりともリターンがあって、いいのではないかなと現状では考えてしまう。けして驕るつもりはないのだけれど、doxas 氏ですら WebGL 一本ではやっていけないらしいよ……というのはあまりいい話じゃないと思うので、私は今日も元気ですということをもっと発信していくべきですね。

 

WebGL に関しては、今後は 2.0 がやってくる。これは個人的には相当大きいので、今のうちから少しずつでも勉強しておきたい。2.0 になったからと言って、シェーダステージが追加されるわけでもないのですけれど、やはり期待すべき点は多い。これはもう早めに勉強開始するべきと思って鈍器のような OpenGL の本を買って勉強することにした。

 

 

OpenGL Insights 日本語版 (54名のエンジニアが明かす最先端グラフィックス プログラミング)

OpenGL Insights 日本語版 (54名のエンジニアが明かす最先端グラフィックス プログラミング)

 

 

 

さらには、WebVR にかなり関心がある。これは相当おもしろいもんだなあと本当に感じていて、なんなら WebGL の延長線上という扱いではなく、WebVR 単体の入門サイトつくりたいくらいである。時間を作らなくてはならない。

 

また今回、書籍を執筆させてもらって感じたこととして、やはり書籍というのはビジネスであるから、売れることを前提に話をしないといけない点が歯がゆかった。自分が発信したい情報の量や質と、書籍に掲載すべき内容とは必ずしもリンクしない。この点はすごく感じた。近々、確かに書籍は発売される。手を抜いたつもりもないし、めっちゃ魂削ったことは事実なんだけど、書きたいことは書ききれていないという思いもあって、いっそ Kindle 版でやっぱりやるしかねえかと思ったりもする。wgld.org というサイトがあるけれども、あのサイトの掲載内容のうちの 3 割くらいまでしか、一冊には収めきれないんだなというのが率直な感想。初心者向けとして噛み砕けば噛み砕くほどに、ページはどんどん増えていく。本当なら、ここでベクトルや行列について深く触れるべきだなと思っても、それをやると初心者向けじゃなくなる、みたいなジレンマがそこら中にあって、OpenGL insights とかそりゃ鈍器になるわなという感じである。

中級者向けの WebGL 本とか、正直売れないと思う。売れない。たぶん。現時点では。

でも出したい。その思いだけがあって、世の中難しいなあと感じる。時間が解決する問題だと簡単に諦めてしまうことはできるが、それは私が WebGL についてもっと活動して、世に広めて、需要を作って、そうして地盤を作ってから書けばいいというだけのことなのでがんばらなくてはなと思う。

 

 初心者向けですが、がんばって書いたのでみんな買ってね!

明解WebGL iOS/Androidも対応した3D CGプログラミングのWeb標準

明解WebGL iOS/Androidも対応した3D CGプログラミングのWeb標準

 

 

WebGL スクールは 5 月から第二期がスタートする。

当初の想定と違って、人の集まり方が第一期のときとは異なっている。今回の第二期のスクールでは、開催回数が全 6 回の予定で、それぞれの回を個別に受講することもできる選択式になっている。にも関わらず、個別に受講することを選択している人はほとんどいない。ほぼ全員が全参加を希望している。この点がまず第一に予想外だった。

さらに、もう枠が埋まりそう。これが第二に予想外だった。定員は各回 26 名なんだけど、もう枠がほとんど残っていないところもある。参加を考えている人は、先着順なので早めに申し込んでくださいませ。

 

webgl.souhonzan.org

 

最近では、WebGL 総本山で事例を紹介させてもらったり、あるいは記事を寄稿してもらったりしながら、人との繋がりも増えてきていてこれが個人的にはとてもうれしいし、楽しいと感じる。

先日は、会社の公式ページにおもいっきり WebGL を使ってることで、前々からすごく気になっていた「ホムンクルス」の方とお会いする機会があって、ごはん食べながらいろいろお話することもできてすごく楽しかったなあ。 

homunculus.jp

 

勉強会を主催したときに、そこで懇親会もやったんだけど、いろんな人と知りあえたり、そこからさらに話が広がったりするのが本当に素晴らしいなあと思うし、大切だと思う。

5 月からはスクールがあることもあり、毎月最低でも 2 回は都内に行くし、それ以外にもなにかと時間は作れそうな気がするし、よかったらみなさん一緒にご飯行きましょう。機会があれば、WebVR 体験会とか、やってもいいかなと思ってます。こういうの企画するとほんとに自分の首締めることになるのはわかってるんだけど、でも面白そうだしね。

 

 

WebGL との向き合い方について考えた2014年を振り返ってみる

本日、と言うかすでに日付は変わってしまったんですが、2014年12月16日、無事に年内の WebGL スクールのカリキュラムが終了しました。

正直なところ、WebGL スクールが始まった11月以降、私は公休をほぼスクールの開催に向けての準備やスクールの授業に使ってきたので、休みが実質全然無いような状況でした。こうして無事にスクールの年内の講義が終わったことは、気持ちの上でも体力的な意味でも大変喜ばしいことだなと思っているところです。

 

思い返せば2014年のはじめ。

私は地道に更新を続けてきていた wgld.org というサイトの運営だけでは、今後の WebGL の普及活動としては不十分なのではないかと考え始めていました。それを契機に、WebGL 関連のイベントをオンラインで企画してみたり、開発者フォーラムを立ち上げてみたり、あるいは勉強会などを開いたり登壇者として積極的に他所へ出向いてみたりと、活動の幅を広げるように心がけてきました。

 

f:id:doxas:20141217050346p:plain

 

さすがに、初めて企画して WebGL 製の作品の投稿を募ったバレンタインデー企画のイベントでは、多くの作品は集まりませんでした。世の注目を集めたわけでもありませんでしたし、正直なところ有意義なイベントとはけして言えなかったと思います。

しかしそこで得られたものには個人的にはすごく大きな意味があったと今でも思っていて、いわゆる本物の現場でエンジニアリングに携わっている方々と、あまりにも普通にコラボレーションできるのだという事実が、私にとってはすごく新鮮であり、また、感動的であり、刺激的でした。

 

今年のはじめくらいの頃は、WebGL というキーワードが徐々に認知され始めてはいましたが今現在と比べるとまだまだ注目度も低かったですし、どちらかというと一部のコアな人たちの高度な遊びという感じでした。いや、少なくとも私はそんなふうに思っていたような気がします。

しかし、国内でほとんど初めてと言っていい本格的な WebGL を主題としたイベントである WebGL Meetup が開催され、そこに私自身登壇することになったわけですが、ここでの反響は個人的な予測をはるかに超える大きなものでした。

なんとなく、みんな気になってはいたんだなあとただ単純に感じました。

そして思いのほか、私という存在、つまり doxas というハンドルネームで活動する人物のネームバリューは以外にも大きいのだなということを実感しました。なんだか自分で言うと恥ずかしいですが……

 

f:id:doxas:20141217050657p:plain

※たまに質問されるんですけど、このサムネ画像は自筆のキャラクターなので特に何かのアニメのキャラとかじゃないです(笑)

 

年末が徐々に近づき、iphoneWebGL に対応したことを皮切りに状況は一変しましたね。一気に WebGL の名を目にする機会が増えました。

Unity も WebGL 出力に対応を表明、あの Adobe 社の製品も WebGL 出力をサポートしたりしましたね。

この頃から、今までは遠巻きに WebGL を眺めていた層、これにはいろいろなタイプの人がいると思いますが、本当にいろんな分野やスキルの人たちが少しずつ WebGL に触れるようになってきたように思います。

いわゆる一級品のフロントエンドエンジニアから、3D 未経験だけどゲームなどを作成することに興味がある趣味グラマ、あるいはまだ実用には絶えないと考えていたのではないかと思われる本物の CG 屋さんなどなど……とにかく多彩な顔ぶれ方々の発言のなかに、ちらほらと WebGL というキーワードが混ざるようになってきました。

 

個人的に興味深かったのは、WebGL に興味を持ってくれた人たちでさえ、実際に WebGL で実装されたものに対する知見が驚くほど少なかったことです。

いろんな場面で、こんなコンテンツもあるんですよ〜 という感じでお見せすると、大抵、反応がすごくいいんですね。WebGL というキーワードについてなんとなく理解していて、しかもその可能性や中身が気になっている人でさえ、実際の WebGL の利用例についてはほとんど知識がない。こういった現状を感じた私は、もっと WebGL の具体的な実装例やその活用事例の発信が必要だなと感じるようになりました。

 

f:id:doxas:20141217050921j:plain

※割りと適当に思いつきで作ってしまったロゴ……デザインセンスがほしい……

 

そうして、WebGL 総本山という新しいサイトを立ち上げる決心をします。

今現在はサイトを作って3ヶ月弱という感じで、まあ、実際のところそんなにたくさんの人が閲覧してくれているわけではないのですが、それでも今のところ毎日更新ができていて、少なからず見てくださっている方もいらっしゃって、私としては大変嬉しく感じています。

総本山では、WebGL に関わるあらゆる情報を発信したいと当初から考えていました。

書評記事もありますし、WebGL に関連する求人情報を掲載したりしたこともありました。先日ついに外部から寄稿をいただくこともできまして、あとはサイト内にバナー広告を出稿してくれるスポンサーが見つかれば万々歳ですね!!! |д゚)チラッ

 

冗談はさておき、WebGL というキーワードの存在感が増していくのと連動するように、私自身も多くのことを、より誤解のないように正しく発信していかなくてはいけないと感じるようになりました。同時に、今までは一方的に WebGL について言及したり、入門向けのテキストを公開しているだけでよかった WebGL との向き合い方が、少しずつその方向性を変え始めているなあとも思うようになりました。

 

つまり、遠巻きに眺めるだけの未来の謎技術というステージから、確実に手の届くところにある技術に WebGL が移行していくその過程で、じゃあ「実際のところ実案件として考えていっていい段階なの?」というところに、WebGL の置かれている状況が変わってきたのですね。

 

実際予見していたことではありましたが、私自身もこの実用に耐えうるのかという観点については、iphone が対応した今現在であっても、明確に、胸を張って、間違いなく太鼓判を押せる状況ですと、一概には言えないと思っています。これにはいろいろな要因がありますが、ひとえに WebGL が持つそのコストの高さがいろんな面でどうしても足を引っ張ります。

学習コストの高さ、扱える人間の少なさに由来する人的コスト、いったんリリースできたとしてもその先の運用や保守に関するコスト、とにかくもうコストと言うコストが掛かりすぎてしまう側面が WebGL にはあると思っています。

 

でもだからこそという考え方も、できるのです。

3D プログラミングは、その独特な実装方法や難解な数学の知識など、なかなか他の分野では扱わないような知識やスキルが求められる部分が多くあります。(3Dに限ったことではないかもしれないですけども)

それ故に、今までもまた今現在でも、コンシューマの開発やゲームエンジンの開発、あるいは高度な CG 作成などの分野にそれらのスキルを持つ人達が自然と流れていっていたと個人的には思っています。しかし WebGL はそういったスキルを身に付ける、あるいは気軽にスキルを磨いていくフィールドとしてはこの上なく敷居の低いものだと思います。

コンパイラは不要、さらに自力でコードを書いて公開するだけならスマートフォンアプリとは違ってライセンスや規約に無駄に縛られることもありません。技術を磨くための参考となる情報がインターネットや書籍から得られるのならば、これほど簡単に 3D プログラミングを始めることができる環境は他にはまだないでしょう。

それならば、今までは「ガチ 3D は無理だ」と諦めてしまっていた層の人たち、あるいは「ガチ 3D で食っていくしかない」と選択肢を狭めるしかなかった層の人たち、そのいずれにとっても WebGL は大きな光明となる可能性があると私は思うわけです。

まったく違う分野で研鑽していたベクトルのまったく異なるエンジニアたちをつなぐ架け橋となり、今までなら考えられなかったような相乗効果やイノベーションを生み出す、そんな可能性が WebGL にはあるのではないかと思うわけです。

 

f:id:doxas:20141217051157j:plain

※シェーダだけで描かれたシーン。GLSL、面白いです。

 

とは言え、今の状況はけして諸手を上げて喜べる状況ではなく、むしろどちらかというと厳しい側面もあると感じているのが正直なところ。一部のマニアックな人達向けの、ある意味娯楽的な存在としてしか WebGL が認知されない未来は十分に考えられます。

私はこれをなんとか阻止したいと本気で思っています。

より気軽に、より多くの人に、この素晴らしい WebGL の可能性に触れてもらいたい。

これが本当の本当に、心の底から一番願っていることなのです。

 

ですから、来年にかけてはもっともっと啓蒙活動を行っていきたいと思っていますし、同時に自分自身がより具体的な活用事例を創作したり、実案件に携わる経験を積んだりする必要があると感じています。

幸いなことに、今年一年を振り返ってみると、積極的に外部に発信したり足を運んだりしてきたことによって、非常に貴重な多くの方々との繋がりや面識を持つことができました。私一人では到底実現できないことや、到底思いつくことができなかったことが、目の前にはたくさんの可能性として広がっています。

 

やってみたいこと。

やらなくてはと感じること。

たくさんたくさんあります。

 

なんとか、また来年も WebGL が日本でより素晴らしいものとして認識されるように、私は私のできることをがんばっていきたい。

声がかかれば学校のようなところ、特に中学校や高校といったところに出向いて講義をするのもいいと思っています。(事実、今開催中の WebGL スクールにはなんと中学生の受講者さんもいらっしゃいます!)

3D 界隈の未来は明るいんだぜ! と次の世代を担うみんなに向けて胸を張って言いたいのです。

 

書籍や Kindle 本だって積極的に出版していきたい。WebGL がマニアックな娯楽になってしまうその前に、より多くの人の手元に WebGL の可能性を届けたいのです。

 

WebGL をガッツリ使った Web サイトの製作にもできることなら関わってみたい。WebGL を用いたスマートフォンアプリ的なプロジェクトにも同じようなことが言えます。より具体的なビジネスチャンスの一つとして、WebGL の存在感をもっと示す一助となりたいのです。

 

願わくば、私は WebGL エンジニアとしてフリーランスになりたい。それが来年の目標です。休みや勤務時間が不規則な今のプライベート環境だと、どうしてもフットワークが悪くなってしまう。まだまだ WebGL が枯れていない段階のうちに、どうにか自分自身がもっと身軽に動けるようになりたい。そうでなければできない活動や成果というものがあるような気がするからです。

 

夢を大きく持つのは自由。

しかし無謀に突っ走りたいわけではありません。現実的に、まじめに、WebGL とこれからも向き合っていきたい。これからも、引き続きがんばりたい所存です。

 

まずは、WebGL 総本山に誰か広告出稿してください。もしくは WebGL のお仕事ください(笑)