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

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

Normal Mapping with Javascript and Canvas





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

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

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

関連記事

ZBrushでアヴァン・ガメラを作ってみる 頭頂部の作り込み...

ZBrushの練習 手のモデリング

BlenderのGeometry Nodeで遊ぶ

Kubric:機械学習用アノテーション付き動画生成パイプライ...

ラクガキの立体化 3Dプリント注文

OpenCV 3.3.0-RCでsfmモジュールをビルド

マンガで分かる JavaScriptプログラミング講座

CGのためのディープラーニング

ZBrushCore

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

3Dグラフィックスの入門書

WordPress on Google App Engine...

BlenderのPython環境にPyTorchをインストー...

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

今年もSSII

スターウォーズ エピソードVIIの予告編

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

『ゴジラ キング・オブ・モンスターズ』のVFXブレイクダウン

天体写真の3D動画

OpenCVでPhotoshopのプラグイン開発

『スター・ウォーズ/スカイウォーカーの夜明け』のVFXブレイ...

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

TensorSpace.js:ニューラルネットワークの構造を...

Boost オープンソースライブラリ

ZBrushで仮面ライダー3号を造る 仮面編 横顔のシルエッ...

OpenGVのライブラリ構成

uGUI:Unityの新しいGUI作成システム

定数

この本読むよ

ブログをwpXレンタルサーバーからwpX Speedへ移行

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

動的なメモリの扱い

OpenCVの顔検出過程を可視化した動画

Raytracing Wiki

3Dモデルを立体視で確認できるVRアプリを作っている

レンダラ制作はOpenGL とか DirectX を使わなく...

UnityのTransformクラスについて調べてみた

ROMOハッカソンに行ってきた

libigl:軽量なジオメトリ処理ライブラリ

SIGGRAPH ASIAのマスコット

D3.js:JavaScriptのデータビジュアライゼーショ...

ZBrush 2018での作業環境を整える

コメント