fullseye

wetness — OPTICS material op

使い方

濡れた面の下地色。拡散が暗くなる(そして鏡面が増える)。

base_rgb: 乾いた状態の色 (H,W,3) または (3,)。wet: 濡れ具合(0–1)。 ior: 水膜の屈折率。

返り値: 濡れた状態の拡散色(同形)。

なぜ暗くなるか: 水膜の内側で全反射が起き、拡散光が何度も表面へ戻されて そのたびに吸収される。近似として、乾いた反射率 ρ に対し内部反射率 Ri = 1 − (1 − Ri0)/n² 相当の再吸収を掛ける ―― 濡れた砂が黒く見える現象そのもの (鏡面が増えるのは clearcoat_shade(coat=wet) を重ねて表す)。

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

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

詳しい使い方ガイド

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

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

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

clearcoat_shade · defocus_blur · diffraction_blur · sensor_capture

同カテゴリ(material)

material_catalog · oren_nayar · clearcoat_shade · sheen_shade · subsurface_approx


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

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