今日は鉄人レースの最終日ですが、自分の最後の部分があまりうまくまとまっていないと感じます。また、時間の関係でいくつかの部分を完全に紹介できなかったため、残念です。
30日間の連続投稿の挑戦は本当に簡単ではありませんでした。次回同様の機会がある場合は、事前に準備をしっかりと行う必要があることを痛感しました。急な状況になってしまって、記事の結末を急いで書くことがないようにしなければなりません。
また、今回の挑戦のテーマは、以前触れたことのないwebGLと3Dグラフィックスでした。最初の10日間で基本的な知識を習得できると思っていましたが、実際にはwebGLシェーダーの応用や作成、three.js APIの活用など、対応するグラフィックス理論の理解が必要で、フレームワークをスムーズに扱うためにはそれが必要でした。
しかし、10日間の学習だけでは十分ではありませんでした。GSGLの作成にもかなりの時間がかかりますし、実際の計算に適用することはなおさらです。フレームワークが低レベルの操作を処理してくれるようになっていますが、より高度な活用や強力な利用が必要な場合は、その背後の操作をより理解する必要があります。
aframeの部分については、時間があれば順次補完する予定です(もし時間があるならば)。将来的には、自分自身が3Dの道を進んで、フロントエンドの画面表現をより豊かにすることを望んでいます。
これには時間の積み重ねと練習が必要であり、従来のフロントエンド開発よりもより挑戦的ですが、この30日間で以前全く理解していなかった知識を学ぶことができました。以前は恐れていたシェーダーも、今では書くことができ、理解することができます。three.jsのAPIには基本的な認識と理解があります。また、webVRの進展やaframeというフレームワークも知ることができました。
この30日間は、最も充実した1ヶ月と言えるでしょう(笑)。このシリーズの記事にはまだ完全でない部分が多くあることは分かっていますが、読者の皆さんが少なからず知識を得られることを願っています!
後書き
優秀作品を受賞しました。これで2016年を総括することができます!記録に残さなかったことがたくさんありますが。
実は、参加通知を見たときはかなり悩みました。フロントエンドのことを考えると、今年はreact
とredux
を使った人が多いでしょう。それならば、ずっと触れたかったけれども触れていなかったwebGLに挑戦してみるのはどうだろう?
画面上のインタラクションに常に興味を持っていましたが、エンジニアにとってはアニメーションなどのロジックを扱うことは非常に面倒で退屈な作業です。この1ヶ月は、ウェブサイト開発とはまったく異なるものを学びましたし、実際の開発にはほとんど応用できませんでした(スケジュールが足りないのに特殊効果を考える人はいませんよね?)。しかし、これらの知識を学ぶことで自分の視野を広げることができ、それは良いことではないでしょうか?
最近、企業が求めるフロントエンドの要件は、データの視覚化にあります。以前は退屈で地味なものと見なされていましたが、ビッグデータの時代において重要視されるようになりました。この分野における要件は、canvasやwebGLの操作能力ですが、すでに多くのフレームワークが低レベルのAPIを処理してくれるようになっています。しかし、フロントエンドエンジニアとしては、基本的な知識を持っている必要があります。そうでなければ、いつか抽象化が浸透してくるでしょう。