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

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

Normal Mapping with Javascript and Canvas





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

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

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

関連記事

書籍『OpenCV 3 プログラミングブック』を購入

ラクガキの立体化 進捗

オープンソースの物理ベースGIレンダラ『appleseed』

Unityの薄い本

AmazonEC2のインスタンスをt1.microからt2....

OpenGVの用語

ZBrushのZmodelerとDynamic Subdiv...

UnityでARKit2.0

フリーのUV展開ツール Roadkill UV Tool

C++始めようと思うんだ

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

UnrealCLR:Unreal Engineで.NET C...

GAN (Generative Adversarial Ne...

オープンソースの顔認識フレームワーク『OpenBR』

ZBrushでアヴァン・ガメラを作ってみる 下アゴの付け根を...

Mask R-CNN:ディープラーニングによる一般物体検出・...

ZBrushでUndo Historyを動画に書き出す

立体視を試してみた

映画から想像するVR・AR時代のGUIデザイン

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

ZBrushでアヴァン・ガメラを作ってみる 歯茎を別パーツへ...

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

布のモデリング

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

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

ZBrushでアヴァン・ガメラを作ってみる 首回りの修正・脚...

Blender 2.81でIntel Open Image ...

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

OANDAのfxTrade API

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

無料で使える人体3DCG作成ツール

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

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

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

組み込み向けのWindows OS 『Windows Emb...

画像生成AI Stable Diffusionで遊ぶ

Runway ML:クリエイターのための機械学習ツール

viser:Pythonで使える3D可視化ライブラリ

Raspberry Pi 2のGPIOピン配置

オープンソースのテクスチャマッピングシステム『Ptex』

マジョーラ

『Geocities-izer』 どんなWebページも一昔前...

コメント