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

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

Normal Mapping with Javascript and Canvas





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

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

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

関連記事

このブログのデザインに飽きてきた

ZBrushのUV MasterでUV展開

Mean Stack開発の最初の一歩

生物の骨格

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

第20回 文化庁メディア芸術祭『3DCG表現と特撮の時代』

UnityでPoint Cloudを表示する方法

ZBrushのUndo Historyをカメラ固定で動画化す...

オープンソースの人体モデリングツール『MakeHuman』の...

ZBrushで仮面ライダー3号を造る ベース編

C++の抽象クラス

HD画質の無駄遣い その2

トランスフォーマー :リベンジのメイキング (デジタルドメイ...

Pix2Pix:CGANによる画像変換

Google XML Sitemap Generatorプラ...

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

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

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

色んな三面図があるサイト

ブログが1日ダウンしてました

Maya LTでFBIK(Full Body IK)

OpenMayaRender

Unreal Engine Tokyo MeetUp!へ行っ...

ポリゴンジオメトリ処理ライブラリ『pmp-library (...

OpenCVで顔のランドマークを検出する『Facemark ...

Super Resolution:OpenCVの超解像処理モ...

NeuralNetwork.NET:.NETで使えるTens...

3DCG Meetup #4に行ってきた

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

ブラウザ上でJavaScript,HTML,CSSを書いて共...

ZBrushでアヴァン・ガメラを作ってみる 甲羅のバランス調...

OpenMayaのPhongShaderクラス

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

顔のモデリング

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

Maya 2015から標準搭載されたMILA

NeRF (Neural Radiance Fields):...

SculptrisとBlenderで作ったGodzilla ...

今年もSSII

OpenCVのバージョン3が正式リリースされたぞ

ZBrushでアヴァン・ガメラを作ってみる おでこ(?)のバ...

Google App Engineのデプロイ失敗

コメント