1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Blenderで16bitのパラメーターを画像テクスチャー経由で使用する

Posted at

BlenderのGeometryNodes上で機械学習モデルを動かしたりなど、外部のツールを用いて算出した大量のパラメーターをなんらかの方法で取り扱いたいケースで、TIFF形式で保存して画像テクスチャとして読み込む方法が便利です。

例えば次のように、0から65535までの65536段階のグレースケール色を各ピクセルに割り当てたTIFF画像を作成します。

import numpy as np
from skimage import io

height = 256
width = 256

image = np.zeros((height, width), dtype=np.uint16)
for i in range(height):
    for j in range(width):
        image[i, j] = (i * width + j)

io.imsave('16bit_grayscale_image.tiff', image)

UV Editingワークスペースなどから作成したTIFF画像を開きます。
色空間はデフォルトでsRGBになっていますが、必ずリニアやRaw等に変更してください。
(ここで変更した色空間は、GeometryNodes上で値を読み取る際にも影響します。)

image.png

あとは次のようなノードを組めば、各ピクセルから情報を拾えます。
このノードでは例としてZ座標に読み取った値を入れていますが、ちゃんと「0.000」「1.000」「2.000」…と、想定通りの値が取得できていることがわかります。

image.png

画像テクスチャノードでは、余計な補間がかからないよう「近接」にしましょう。

1
1
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
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?