0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[Godot] AnimatedSprite2DにNormal Mapを適用したいとき

0
Posted at

Normal Mapとは?

光の当たりをいい感じにするやつです。

スクリーンショット 2026-03-13 175916.png

こんな感じで横、上、正面からの光の当たり具合をRGBで表したものをノーマルマップ(法線マップ)と言い、これを描くと

スクリーンショット 2026-03-13 175630.png

こんな感じにゲームエンジン側でよしなに影を表現してくれます。

以下指定方法。

一枚絵の時

一枚絵の時はSprite2Dを置いてCanvasTextureを作成。
スクリーンショット (111).png

Diffuseに元画像、NormalMapにノーマルマップを指定します。
スクリーンショット 2026-03-17 130426.png

あとはLight2D置けばいい感じになります。

アニメーションの時

ここが本題です。これ意外と調べてもろくな内容が出てこなかったので。

任意のディレクトリを右クリック→新規作成→リソースよりCanvasTextureを作成。
Diffuseにはアニメーションのスプライトシートを、NormalMapにはそれに対応するノーマルマップのスプライトシートを指定。
AnimatedSprite2Dには、「元のスプライトシート」ではなく、「新規作成したCanvasTexture」を読み込ませます。これでノーマルマップの指定が楽にできます。

検索でヒットしたフォーラムには「フレームごとにCanvasTextureを作らないと...」みたいな内容が出てきましたが、たぶんまとめて行けるだろうと思い試したらビンゴだったので、一応共有しておきます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?