html5のcanvasの可能性

もう3年前になるけど、html5のcanvas要素を使って、画像ファイルを極力使わずにWebサイトをリッチな見た目にする方法を考えていた。当時、スマホやタブレット、ノートPCなどのモバイル端末は、日を追うごとに画面が解像度化、演算能力は向上していった。このまま進むと「ボトルネックとなるのはマシンの演算能力よりもデータ通信速度じゃないか?」って思うようになった。

端末の画面の高解像度化に伴って、より高解像度に耐えうるWebサイトが必要とされ、サイトに掲載される画像の容量は増え、ストレージを圧迫し、ダウンロードにも時間がかかる。そう考えると、大容量の画像ファイルを通信回線に載せるよりも、描画アルゴリズムだけを通信すれば良いんじゃないかって。CGで言うところのプロシージャルテクスチャのような手法を使えば、クライアント側のマシンパワーでリッチな背景を生成できるんじゃないかと。


スポンサーリンク


スポンサーリンク

html5のcanvasを使えば、CGを描画するのと同じように、ブラウザ上に自由にグラフィックを描画できる。当時、すでにこういうものが登場していた↓
canvasでキラキラした背景を作る方法
背景を画像ではなく乱数を使ってcanvasに円を描画する、広義のプロシージャル手法ってこと。
当時はjavascriptも知らなかったのでこれで全体像を勉強した。↓
Javascript ビジュアル・リファレンス 改訂版

さらに最近ではWebGL環境も整ってきて、ブラウザ上で手軽にCGが描画できるライブラリも出てきた。
jsdo.itのページ

ということで、こういう考えでWordPressテーマを自作したいのであった。


スポンサーリンク

関連記事

OpenCV バージョン4がリリースされた!
法線マップを用意してCanvas上でShadingするサンプル
定数
iPhoneアプリ開発 Xcode 5のお作法
オープンソースのロボットアプリケーションフレームワーク『ROS (Robot Operating S...
PGGAN:段階的に解像度を上げて学習を進めるGAN
cvui:OpenCVのための軽量GUIライブラリ
オープンソースの物理ベースGIレンダラ『appleseed』
PythonでMayaのShapeノードプラグインを作る
OpenCVでPhotoshopのプラグイン開発
Faster R-CNN:ディープラーニングによる一般物体検出手法
HTML5・WebGLベースのグラフィックスエンジン『Goo Engine』
OpenGVの用語
Google App Engine上のWordPressでFlickrの画像を貼る
2D→3D復元技術で使われる用語まとめ
PyDataTokyo主催のDeep Learning勉強会
Iridescence:プロトタイピング向け軽量3D可視化ライブラリ
iOSデバイスのためのフィジカル・コンピューティングツールキット『konashi(こなし)』
マンガで分かる JavaScriptプログラミング講座
胡散臭いデザインの参考サイト
科学技術計算向けスクリプト言語『Julia』
OpenCVのfindEssentialMat関数を使ったサンプルを読んでみる
SONY製のニューラルネットワークライブラリ『NNabla』
UnityでLight Shaftを表現する
Managing Software Requirements: A Unified Approach
フルCGのウルトラマン!?
フォトンの放射から格納までを可視化した動画
OpenMesh:オープンソースの3Dメッシュデータライブラリ
IronPythonを使ってUnity上でPythonのコードを実行する
libigl:軽量なジオメトリ処理ライブラリ
OpenMVS:Multi-View Stereoによる3次元復元ライブラリ
UnityのuGUIチュートリアル
Unity ARKitプラグインサンプルのチュートリアルを読む
ManimML:機械学習の概念を視覚的に説明するためのライブラリ
Google Colaboratoryで遊ぶ準備
ZBrushで作った3Dモデルを立体視で確認できるVRアプリを作る
触れば分かる ユニバーサルデザインな腕時計『The Bradley』
ブラウザ上でJavaScript,HTML,CSSを書いて共有するサイト『jsdo.it』
Pylearn2:ディープラーニングに対応したPythonの機械学習ライブラリ
書籍『ゼロから作るDeep Learning』で自分なりに学ぶ
OpenVDB:3Dボリュームデータ処理ライブラリ
ブログのデザイン変えました

コメント