html5のcanvasの可能性

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

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

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

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

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

関連記事

ドットインストールのWordPress入門レッスン

PyMC:Pythonのベイズ統計ライブラリ

Russian3DScannerのトポロジー転送ツール『Wr...

触れば分かる ユニバーサルデザインな腕時計『The Brad...

Amazon EC2ログイン用の秘密鍵を無くした場合の対処方...

網元AMIで作ったWordpressサイトのインスタンスをt...

Pythonの自然言語処理ライブラリ『NLTK(Natura...

Super Resolution:OpenCVの超解像処理モ...

ブラウザ操作自動化ツール『Selenium』を試す

WordPressのテーマを自作する

OpenVDB:3Dボリュームデータ処理ライブラリ

Raspberry Piでセンサーの常時稼働を検討する

OpenCV バージョン4がリリースされた!

UnityでOpenCVを使うには?

OpenCVのバージョン3が正式リリースされたぞ

PGGAN:段階的に解像度を上げて学習を進めるGAN

Unityで強化学習できる『Unity ML-Agents』

Web経由でRaspberry PiのGPIOを操作したい

天体写真の3D動画

日本でMakersは普及するだろうか?

オープンソースの取引プラットフォーム

MPFB2:Blenderの人体モデリングアドオン

株式会社ヘキサドライブの研究室ページ

Dlib:C++の機械学習ライブラリ

生物の骨格

Math Inspector:科学計算向けビジュアルプログラ...

NumSharp:C#で使えるNumPyライクな数値計算ライ...

cvui:OpenCVのための軽量GUIライブラリ

変形ロボットのデザイン

Google App Engine上のWordPressでA...

Multi-View Environment:複数画像から3...

オープンソースの人体モデリングツール『MakeHuman』の...

ブログの復旧が難航してた話

UnityでTweenアニメーションを実装できる3種類の無料...

AMIMOTO(PVM版)で作成したインスタンスをAMIMO...

bpy-renderer:レンダリング用Pythonパッケー...

フィクションに登場するUIデザインのまとめサイト

SONYの自律型エンタテインメントロボット『aibo』

Manim:Pythonで使える数学アニメーションライブラリ

第1回 3D勉強会@関東『SLAMチュートリアル大会』

Kaolin:3Dディープラーニング用のPyTorchライブ...

OpenCV 3.3.0 contribのsfmモジュールの...

コメント