次の方法で共有


firstbitlow 関数

最初のセット ビットの位置を、最下位ビットから開始し、コンポーネントごとに上方向に動作する位置を返します。 この組み込み関数は、DXBC 命令 firstbit_loに対応します。

構文

int firstbitlow(
  in int value
);

パラメーター

[in]

型: int

入力値。

戻り値

型: int

最初のセット ビットの位置。

検索は、下位ビット (LSB) から始まる 0 から始まるカウント (またはインデックス) です。 そのため、1U << firstbitlow(value) を使用して、検出された対応するビットを再作成できます。 入力にビットが設定されていない場合、戻り値は0xFFFFFFFFされます (すべてのビットが設定されます)。 エンディアンネスはここでは関係ありません。(メモリ レイアウト内ではなく) 整数のビットの基準値のみ。

備考

次のオーバーロードされたバージョンも使用できます。

uint2 firstbitlow(uint2 value);
uint3 firstbitlow(uint3 value);
uint4 firstbitlow(uint4 value);

最小シェーダー モデル

この関数は、次のシェーダー モデルでサポートされています。

シェーダー モデル サポート
シェーダー モデル 5 以降のシェーダー モデル はい

この関数は、次の種類のシェーダーでサポートされています。

頂点 ドメイン 幾何学 ピクセル 計算する
x x x x x x

関連項目