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

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

Normal Mapping with Javascript and Canvas





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

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

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

関連記事

iPhone 3GSがますます欲しくなる動画

ZBrushでゴジラ2001を作ってみる 身体のSubToo...

ZBrushでアヴァン・ガメラを作ってみる 下アゴと頭部を作...

Zibra Liquids:Unity向け流体シミュレーショ...

OANDAのfxTrade API

Adobe Photoshop CS5の新機能

Adobe Photoshop CS4 Extendedの3...

OpenCVで顔のモーフィングを実装する

ジュラシック・パークの続編『ジュラシック・ワールド』

物理ベースレンダリングのためのマテリアル設定チートシート

ZBrushの練習 手のモデリング

プロシージャル手法に特化した本が出てるみたい(まだ買わないけ...

OpenMayaRender

PythonでMayaのShapeノードプラグインを作る

オープンソースのネットワーク可視化ソフトウェアプラットフォー...

C++ 標準テンプレートライブラリ (STL)

COLMAP:オープンソースのSfM・MVSツール

Deep Fluids:流体シミュレーションをディープラーニ...

OpenCVでカメラ画像から自己位置認識 (Visual O...

UnrealCLR:Unreal Engineで.NET C...

『パシフィック・リム: アップライジング』のVFXブレイクダ...

3D映画のポストプロダクション 2D-3D変換

pythonの機械学習ライブラリ『scikit-learn』

今年もSSII

Raspberry PiでIoTごっこ

昔Mayaでモデリングしたモデルをリファインしてみようか

Mitsuba 2:オープンソースの物理ベースレンダラ

Open3D:3Dデータ処理ライブラリ

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

Google Chromecast

シン・ゴジラのファンアート

IronPythonを使ってUnity上でPythonのコー...

Google製オープンソース機械学習ライブラリ『Tensor...

顔モデリングのチュートリアル

タダでRenderManを体験する方法

ZBrushでゴジラ2001を作ってみる 姿勢の変更

トランスフォーマー/ロストエイジのメイキング

ZBrush 2021.6のMesh from Mask機能...

続・ディープラーニングの資料

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

手を動かしながら学ぶデータマイニング

ラクガキの立体化 1年半ぶりの続き

コメント