fullseye

clearcoat_shade — OPTICS material op

使い方

透明な上塗りを被せる(車の塗装・陶器の釉薬・光沢プラスチック)。

base_rgb: 下地の色 (H,W,3) または (3,)。normals / light / view: 上記と同じ。 ior: 上塗りの屈折率(クリア塗料 ~1.5)。coat: 上塗りの強さ(0–1)。 coat_roughness: 上塗りのざらつき(0 = 完全な鏡面、大きいほどぼける)。

返り値: (H, W, 3) 線形 sRGB。

★ 要点はエネルギーの引き算: 上塗りで反射した分だけ下地に届く光が減る。 下地は (1 − F(入射)) × (1 − F(出射)) で減衰する ―― これを掛けないと、 上塗りを足すほど全体が明るくなる(物理的にありえない)。

ファミリ共通の入力契約(fail-closed)

optics の全 op は入力を検証してから計算する(黙って通さない):

詳しい使い方ガイド

参考(サンプルデータ・文献)

実行できる例(この op を実際に呼ぶ検証済みサンプル)

型が繋がる次の op(rgbimage を入力に取れる)

wetness · defocus_blur · diffraction_blur · sensor_capture

同カテゴリ(material)

material_catalog · oren_nayar · sheen_shade · subsurface_approx · wetness


Provenance: surfacelib.py — OPTICS operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.