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

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

Normal Mapping with Javascript and Canvas





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

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

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

関連記事

『ローグ・ワン/スター・ウォーズ・ストーリー』"あのキャラク...

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

GAN (Generative Adversarial Ne...

マイケル・ベイの動画の感覚

OpenGVのライブラリ構成

DCGAN (Deep Convolutional GAN)...

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

Blender 2.8がついに正式リリース!

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

UnityでOpenCVを使うには?

ポリ男からMetaHumanを作る

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

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

ポリ男をリファイン

3Dスキャンに基づくプロシージャルフェイシャルアニメーション

物理ベースレンダリングのためのマテリアル設定チートシート

Managing Software Requirements...

ZBrush 4R7

Unreal Engine 5の情報が公開された!

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

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

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

HTML5・WebGLベースのグラフィックスエンジン『Goo...

OpenCV 3.1から追加されたSfMモジュール

WordPressプラグインによるサイトマップの自動生成

ラクガキの立体化 モールドの追加

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

マジョーラ

SIGGRAPH ASIA 2009で学生ボランティア募集し...

After Effects全エフェクトの解説(6.5)

ZBrush 4R8 リリース!

Mayaのプラグイン開発

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

『手を動かしながら学ぶエンジニアのためのデータサイエンス』ハ...

3分の動画でプログラミングを学習できるサイト『ドットインスト...

この連休でZBrushの スキルアップを…

リアルタイム レイトレーシングAPI『DirectX Ray...

SIGGRAPH 2020はオンライン開催

ブログの復旧が難航してた話

OpenMVSのサンプルを動かしてみる

Paul Debevec

Blender 4.2以降のWindowsPortable版...

コメント