法線マップを用意してCanvas上でShadingするサンプル

何かこのページだいぶ前にメモったつもりだったんだけどな。

Normal Mapping with Javascript and Canvas





まあ、ラスタライズ後の処理だけ実装した感じだよね。これがあるだけで立体感がまるで違う。この例ではマウスでライトを制御してるけど、もちろん自動でライトの方向を三次元的にグルグル動かすことも可能なはず。(オブジェクトが動かないだけ)

これのサンプルコード見てて知ったんだけど、JavaScriptって関数の中に関数を記述する『クロージャ』ってのがあるのね。クロージャについてはもう少し勉強しよう。

ついでに
Realtime Raytracing in Javascript!
Path tracing a cornell box in Javascript

関連記事

生物の骨格

Unityで学ぶC#

Maya LTのQuick Rigを試す

MeshroomでPhotogrammetry

SculptrisとBlenderで作ったGodzilla ...

3Dスキャンに基づくプロシージャルフェイシャルアニメーション

粘土をこねるようなスカルプトモデリング

『スター・ウォーズ フォースの覚醒』のVFXブレイクダウン ...

定数

ZBrushのお勉強

Windows Server 2008にAutodesk M...

OpenCV 3.1のsfmモジュールのビルド再び

AfterEffectsプラグイン開発

Unity ARKitプラグインサンプルのチュートリアルを読...

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

KelpNet:C#で使える可読性重視のディープラーニングラ...

ZBrushCore

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

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

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

マジョーラ

iOSデバイスのためのフィジカル・コンピューティングツールキ...

機械学習手法『Random Forest』

Accord.NET Framework:C#で使える機械学...

hloc:SuperGlueで精度を向上させたSfM・Vis...

BlenderのRigifyでリギング

ZBrushで仮面ライダー3号を造る 仮面編 PolyGro...

写真に3Dオブジェクトを違和感無く合成する『3DPhotoM...

リアルタイム レイトレーシングAPI『DirectX Ray...

Photogrammetry (写真測量法)

HD画質の無駄遣い その2

DUSt3R:3Dコンピュータービジョンの基盤モデル

『ハン・ソロ/スター・ウォーズ・ストーリー』のVFXブレイク...

ポリ男をリファイン

Geogram:C++の3D幾何アルゴリズムライブラリ

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

書籍『3次元コンピュータビジョン計算ハンドブック』を購入

ArUco:OpenCVベースのコンパクトなARライブラリ

Raspberry Pi

イタリアの自動車ブランドFiatとゴジラがコラボしたCMのメ...

2D→3D復元技術で使われる用語まとめ

MRenderUtil::raytrace

コメント