この関数は、ピクセル値に対してバイニリア補間を実行します。フィルターがかかっていないピクセル値を取得するには、rawcolormapを使用します。
                
                    
                    
                    
                        vector|vector4 colormap(string filename, vector uvw, ...)
                    
                    
                
            
‹uvw›の最初の2つのコンポーネントを(0-1)単位座標として使用して、テクスチャファイルをポイントサンプリングします。
                
                    
                    
                    
                        vector|vector4 colormap(string filename, float u, float v, ...)
                    
                    
                
            
‹u›と‹v›を(0-1)単位座標として使用して、テクスチャファイルをポイントサンプリングします。
                
                    
                    
                    
                        vector|vector4 colormap(string filename, vector uv, vector du, vector dv, int samples, ...)
                    
                    
                
            
(uv)-(uv+du)-(uv+du+dv)-(uv+dv)で形を定義した四辺形を使用して、テクスチャファイルを領域サンプリングします。
    これは、(画像が.ratファイルでない限り)確率的サンプルの‹samples›数を受け取ります。
                
                    
                    
                    
                        vector|vector4 colormap(string filename, vector uv0, vector uv1, vector uv2, vector uv3, ...)
                    
                    
                
            
(uv0)-(uv1)-(uv2)-(uv3)で形を定義した四辺形を使用して、テクスチャファイルを領域サンプリングします。
                
                    
                    
                    
                        vector|vector4 colormap(string filename, vector uv0, vector uv1, vector uv2, vector uv3, int samples, ...)
                    
                    
                
            
(uv0)-(uv1)-(uv2)-(uv3)で形を定義した四辺形を使用して、テクスチャファイルを領域サンプリングします。
    これは、(画像が.ratファイルでない限り)確率的サンプルの‹samples›数を受け取ります。
                
                    
                    
                    
                        vector|vector4 colormap(string filename, float u0, float v0, float u1, float v1, float u2, float v2, float u3, float v3, int samples, ...)
                    
                    
                
            
(uv0)-(uv1)-(uv2)-(uv3)で形を定義した四辺形を使用して、テクスチャファイルを領域サンプリングします。
    これは、(画像が.ratファイルでない限り)確率的サンプルの‹samples›数を受け取ります。
Returns
戻りタイプがvector4の関数をコールした場合は、その4番目のコンポーネントがテクスチャのアルファチャンネルです。画像にアルファがない場合は、その4番目のコンポーネントは常に1になります。
画像フィルタリングオプション ¶
フィルタパラメータを指定する例:
colormap(map, u, v, "smode", "decal", "tmode", "repeat", "border", {.1,1,1}); colormap(map, u, v, "mode", "clamp", "width", 1.3); colormap(map, u, v, "filter", "gauss", "width", 1.3, "mode", "repeat");
テクスチャがdeep.ratファイルの場合、channelキーワード引数を使用することで、そのファイル内のチャンネルを指定することができます:
string channelname = "N"; cf = colormap(map, u, v, "channel", channelname);
- 
        
        Houdiniネイティブフォーマットの .picや.rat以外のフォーマットでテクスチャを読み込むと、Houdiniは OpenImageIO を使用してファイルから画像データを読み込みます。その場合には、以下の一部の可変引数は何の効果もありません。
- 
        
        テクスチャ関数が非Houdiniフォーマットテクスチャを評価すると、Houdiniはそのテクスチャ評価にOpenImageIOを使用するように切り替えます。 多くの可変キーワードに値が呼応していますが、一部のキーワードはOpenImageIOには同等の関数がありません。 - 
        
        デフォルトでは、OIIOはマルチ解像度画像を持たない画像に対してMIPマップを生成 しません 。 OPENIMAGEIO_IMAGECACHE_OPTIONS環境変数の内容にautomip=1を追加することで、これを有効にすることができます。MIPマップがないと、ブラーとフィルタリングが期待通りに動作しない場合があります。 
- 
        
        OPENIMAGEIO_IMAGECACHE_OPTIONSを使用することで、OIIOがキャッシュで使用するメモリ使用量を上書きすることもできます。デフォルトでは、Houdiniはキャッシュメモリを物理コンピュータメモリの1/8に設定します。 OPENIMAGEIO_IMAGECACHE_OPTIONS変数を設定すると、その計算されたキャッシュサイズが上書きされます。
 
- 
        
        
            
                "wrap",
                string
                
                    ="repeat"
                
            
            
        
repeat または periodic 
        
画像マップが0から1の範囲外を繰り返します。 基本的には、テクスチャ座標の整数コンポーネントは無視されます。 これがデフォルトです。
clamp または edge または streak 
        
テクスチャ座標が0から1の範囲に制限されます。 これによって、その範囲外では、その画像に最も近いエッジにおけるカラーが評価されます(境界のピクセルが範囲外に引き伸ばされます)。
black または decal または color 
        
0から1の範囲外の座標では(画像内のカラーではなく)境界カラーが評価されます。 境界カラーはデフォルトでブラック(つまり0)です。
            
                "uwrap",
                string
                
            
            
        
(通称swrap)
    u座標が0から1の範囲外の時の挙動を指定します。
    この値はwrapと同じです。
            
                "vwrap",
                string
                
            
            
        
(通称twrap)
    v座標が0から1の範囲外の時の挙動を指定します。
    この値はwrapと同じです。
            
                "border",
                float|vector|vector4
                
                    =0
                
            
            
        
Black/Decal/Colorのラップが使用されている時の境界カラーを指定します。 OpenImageIOフォーマットには何の効果もありません。
            
                "default_color",
                float|vector|vector4
                
            
            
        
テクスチャマップが見つからなかった時に使用するカラーを指定します。 この引数を渡さなかった場合、そのカラーはHOUDINI_DEFAULT_TEXTURE_COLOR変数で設定されます。
            
                "channel",
                
                
            
            
        
複数カラー平面(例えば、diffuse_indirectやN)を持つテクスチャのカラーチャンネルを指定します。
    ptex画像に関しては、ここには1番目のチャンネルのインデックス(例えば、0や4)を指定します。
            
                "blur",
                float
                
            
            
        
xとyの方向にブラーします。ブラーには、画像サイズの比率を指定します。
    つまり、0.1のブラーは画像幅の10%をブラーします。
    方向別に異なるブラー量が必要であれば、xblurとyblurを使用します。
            
                "xblur",
                
                
            
            
        
(通称ublur, sblur)
    x画像方向のブラー量。
            
                "yblur",
                
                
            
            
        
(通称vblur, tblur)
    y画像方向のブラー量。
            
                "pixelblur",
                float
                
            
            
        
浮動小数点の数のピクセルだけテクスチャをブラーします。 OpenImageIOフォーマットには何の効果もありません。
Cf = texture("map.rat", ss, tt, "pixelblur", 2.0);
            
                "xpixelblur",
                float
                
            
            
        
X方向に浮動小数点の数のピクセルだけテクスチャをブラーします。
            
                "ypixelblur",
                float
                
            
            
        
Y方向に浮動小数点の数のピクセルだけテクスチャをブラーします。
            
                "filter",
                string
                
                    ="box"
                
            
            
        
評価に使用するアンチエイリアスフィルタのタイプを指定します。
Houdiniネイティブフォーマット では、以下の値のどれかを文字列で指定することができます:
"point"
        
ポイントサンプリング(つまり、フィルタリングなし)
"box"
        
ボックスフィルタ(デフォルト)
"gauss"
        
ガウスフィルタ
"bartlett"
        
Bartlett/Triangularフィルタ
"sinc"
        
Sinc sharpeningフィルタ
"hanning"
        
Hanningフィルタ
"blackman"
        
Blackmanフィルタ
"catrom"
        
Catmull-Romフィルタ
(OpenImageIOで読み込まれた)他のすべてのフォーマット では、"point"フィルタを指定すると、OIIOの補間モードが"closest"に設定され、MIPマップを無効にします。他の値はOIIOのsmart-bicubic補間を使用します。
    "filtermode"可変引数(以下参照)を使用することで、もっと細かくコントロールすることができます。
            
                "xfilter",
                string
                
            
            
        
(通称ufilter, sfilter)
    X方向のフィルタを指定します。このフィルタはfilterと同じです。
            
                "yfilter",
                string
                
            
            
        
(通称vfilter, tfilter)
    Y方向のフィルタを指定します。このフィルタはfilterと同じです。
            
                "filtermode",
                string
                
            
            
        
Houdiniネイティブフォーマット では、VEXはもっと単純なフィルタリングも対応しています。
    filtermodeには以下のどれかを設定することができます:
filter
        
filterキーワード引数で指定されたフィルタリングを使用します。
bilinear
        
単純なバイリニアフィルタリングを使用します。これが最も高速なフィルタリングモードですが、フィルタリングの品質が最も低いです。
biquadratic
        
単純な2次フィルタリングを使用します(階数3フィルタリング)。
bicubic
        
単純な3次フィルタリングを使用します。
filtermodeをbilinear, biquadratic, bicubicに設定すると、
    いくつかの引数(例えば、filterやwidth)が無視され、代わりに固定された補間フィルタが使用されます。
    他の引数(特に、lerpやblurのキーワード)は有効です。
(OpenImageIOで読み込まれた)他のすべてのフォーマット では、filtermodeに"filter"(上記の"filter"を参照)、"bilinear"、"biquadratic"、"bicubic"のどれかを設定することができます。
            
                "width",
                float
                
                    =1.0
                
            
            
        
Houdiniネイティブフォーマット では、これはXとYの両方向のフィルタ幅を設定します。
(OpenImageIOで読み込まれた)他のすべてのフォーマット では、これはOIIOのswidthとtwidthのオプションを設定します。
            
                "xwidth",
                float
                
            
            
        
(通称uwidth, swidth)
    X方向のフィルタ幅。
            
                "ywidth",
                float
                
            
            
        
(通称vwidth, twidth)
    Y方向のフィルタ幅。
            
                "zwidth",
                float
                
            
            
        
Z方向のフィルタ幅(シャドウマップ用)。 これは、他の幅の引数とは違って、ワールド空間の単位を指定します。
            
                "extrapolate",
                int
                
            
            
        
アンチエイリアス情報を計算する時に、微分による外挿法を使用するかどうか指定します。微分による外挿法がデフォルトで有効になっています。引数は0か1を指定します。
            
                "lerp",
                int
                
            
            
        
Houdiniネイティブフォーマット では、RATファイルを異なるMIPレベル間で補間するかどうか指定します。
    デフォルトでは無効になっています。補間を有効にすれば、.ratファイルの異なるMIPレベルにアクセスした時の不連続性を取り除くのに役に立ちます。
    しかし、テクスチャ評価の結果は、少しだけソフトになり(つまり、ぼやけます)、時間がかかります。
この引数には3つの値を指定することができます。
0
        
MIPマップ補間を無効にします(最高速)。
1
        
MIPマップ補間を近似します(高速)。
2
        
最高品質のMIPマップ補間(遅いですが最高品質です)。
(OpenImageIOで読み込まれた)他のすべてのフォーマット では、0の値は単一MIPレベルが指定され、それ以外の値はトリリニア補間が指定されます。
            
                "depthinterp",
                string
                
            
            
        
ディープシャドウマップの深度補間モードを指定して、マップが2つのz-record間でサンプリングされる時に返す不透明度の値を制御します。
引数は、文字列でなければなりません。
discrete 
        
(デフォルト)サンプルポイントの前の最初のz-recordを返します。
linear 
        
サンプルポイント前と後のz-recordの不透明度を線形的に補間します。
2つのモードの違いは、ディープシャドウマップを参照してください。
            
                "beerlambert",
                int
                
            
            
        
ボリュームディープシャドウマップを評価する時、これは、不透明度に対してBeer-Lambert補間を有効にします。 Beer-Lambertは正確ですが、処理が重い補間形式です。
引数には、0または1を指定します。
            
                "srccolorspace",
                string
                
            
            
        
テクスチャを格納するカラー空間を指定します。 テクスチャの値にアクセスすると、それらの値は、必要に応じてレンダリングのために、この空間から線形空間に変換されます。
auto 
        
(デフォルト) ファイルに基づいてソースのカラー空間を決めます。 現在のところ、これは8ビットテクスチャに対してはsRGBカラー空間とみなし、他のテクスチャすべてに対してはリニアカラー空間と見なします。
linear 
        
リニアカラー空間に変換します。これは、現在のところ8ビットテクスチャにのみ影響を与えます。なぜなら、他のテクスチャすべてが既にリニアカラー空間とみなされているからです。 このオプションを使えば、バンプマップやディスプレイスメントマップで使用するテクスチャを強制的に線形補間します。
sRGB 
        
テクスチャのビット深度もチャンネル数も関係なく、強制的にsRGBカラー空間からリニアカラー空間に変換します。
rec709
        
Rec709カラー空間からリニアカラー空間に変換します。
gamma22
        
Gamma2.2カラー空間からリニアカラー空間に変換します。
raw
        
変換されていないマップカラーを使用します。
srccolorspace引数には、OpenColorIOが認識できるものならどんなカラー空間でも指定することができます。
            
                "face",
                
                
            
            
        
Ptexテクスチャマップを使用する時、face引数を使用してPtextureルックアップでフェースを指定します。
    OpenImageIOフォーマットには何の効果もありません。
            
                "ptexorient",
                int
                
            
            
        
Ptexテクスチャを使用する時、ポリゴンの暗黙のテクスチャ座標が(faceと組み合わせて)テクスチャルックアップの補間に使用されます。
    しかし、別のソフトウェアではポリゴンの周回方向と向きの定義が異なることがあります。
    このキーワードの引数は、Houdiniのポリゴンの向きの解釈を制御することができます。
    ptexorientには、ビットフィールドで構成された整数の引数が必要です。
- 
        
        ビット 0×01: s座標の補数を取ります。
- 
        
        ビット 0×02: t座標の補数を取ります。
- 
        
        ビット 0×04: sとtの座標を入れ替えます。
例えば、6 (0×4|0×2)の値は、texture(map, s, t)ではなく、texture(map, 1-t, s)をコールすることと等価です。
デフォルトのptexorientは0です。これは、http://ptex.usにあるサンプルで正しく動作します。
OpenImageIOフォーマットには何の効果もありません。
            
                "iesnormalization",
                string
                
                    ="maxvalue"
                
            
            
        
environment()関数を介してIESマップの出力値を照会する際にその値を正規化する方法を選択します。
none 
        
ヘッダー内のカンデラ乗数でスケールされたRaw値を使用します。
maxvalue 
        
(デフォルト)最大値で正規化されます。これは、Mantraのデフォルトライトシェーダで使用されている古い挙動です。
preserveenergy 
        
写角の累積値で正規化されるので、IESプロファイルは全体のエネルギー出力を維持しつつライトの形状に影響を与えます。
| See also | |
| color | |
| file | |
| map | |
| texture |