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

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

Normal Mapping with Javascript and Canvas





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

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

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

関連記事

ラクガキの立体化

OpenCVでPhotoshopのプラグイン開発

ZBrush 4R7

Raspberry PiでIoTごっこ

書籍『The Art of Mystical Beasts』...

フォトンの放射から格納までを可視化した動画

OpenCVで動画の手ぶれ補正

ラクガキの立体化 目標設定

ゴジラの造形

CEDEC 3日目

『ピクサー展』へ行ってきた

konashiのサンプルコードを動かしてみた

iOSで使えるJetpac社の物体認識SDK『DeepBel...

CGWORLD CHANNEL 第21回ニコ生配信は『シン・...

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

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

Autodesk Mementoでゴジラを3次元復元する

定数

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

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

Physics Forests:機械学習で流体シミュレーショ...

Point Cloud Libraryに動画フォーマットが追...

OpenMVS:Multi-View Stereoによる3次...

ZBrushでアヴァン・ガメラを作ってみる

ZBrushで基本となるブラシ

TeleSculptor:空撮動画からPhotogramme...

trimesh:PythonでポリゴンMeshを扱うライブラ...

ROSの薄い本

adskShaderSDK

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

OpenCVで平均顔を作るチュートリアル

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

Theia:オープンソースのStructure from M...

単純に遊びに行くのはだめなのか?

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

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

日立のフルパララックス立体ディスプレイ

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

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

OpenCV

Subsurface scatteringの動画

1枚の画像からマテリアルを作成できる無料ツール『Materi...

コメント