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

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

Normal Mapping with Javascript and Canvas





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

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

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

関連記事

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

ZBrushで手首のモデリングをリファイン

ZBrushでリメッシュとディティールの転送

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

Math.NET Numerics:Unityで使える数値計...

Math Inspector:科学計算向けビジュアルプログラ...

Siggraph Asia 2009 カンファレンスの詳細

OpenMayaのPhongShaderクラス

Adobe Photoshop CS4 Extendedの3...

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

Pylearn2:ディープラーニングに対応したPythonの...

LuxCoreRender:オープンソースの物理ベースレンダ...

ManimML:機械学習の概念を視覚的に説明するためのライブ...

JavaによるCGプログラミング入門サイト (日本語)

Raspberry Pi

iPhoneアプリ開発 Xcode 5のお作法

マルコフ連鎖モンテカルロ法

Raspberry PiでIoTごっこ

WordPress on Windows Azure

Webスクレイピングの勉強会に行ってきた

Ambient Occlusionを解析的に求める

Faceshiftで表情をキャプチャしてBlender上でM...

ZBrush 4R8 リリース!

geometry3Sharp:Unity C#で使えるポリゴ...

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

ニンテンドー3DSのGPU PICA200

Iridescence:プロトタイピング向け軽量3D可視化ラ...

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

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

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

AndroidもopenGLも初心者さ (でもJavaは知っ...

ヘッドマウントディスプレイとビジュアリゼーションの未来

Maya LTでFBIK(Full Body IK)

Rerun:マルチモーダルデータの可視化アプリとSDK

ブログをGoogle App EngineからAmazon ...

機械学習に役立つPythonライブラリ一覧

Python拡張モジュールのWindows用インストーラー配...

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

書籍『開田裕治 怪獣イラストテクニック』

SONYの自律型エンタテインメントロボット『aibo』

HerokuでMEAN stack

MPC社によるゴジラ(2014)のVFXブレイクダウン

コメント