On this page |
このVOPはポイントクラウドファイル(.pc
)を開き、一定の位置を中心とするポイントへのアクセスをキューに登録します。
pcfilter VOPは、大元のpcopenVEX関数を呼び出します。
入力
file
ロードするファイル名です。 ポイントクラウドファイルは、.pcの拡張子を使用しますが、ジオメトリファイルをポイントクラウドとしてロードすることも可能です。
pchannel
検索する位置を含むテクスチャでのチャンネル名です。
P
クエリ位置です。ファイルでのポイントの検索はこの位置から始まります。
nchannel
任意で、ポイント検索の範囲を検索法線Nと並ぶ法線を持つポイントに制限するように法線チャンネルを準備できます。
N
クエリ法線です。dot(N, Npoint) > cos(cone)
を持つポイントはキューに登録され、一致しないポイントは拒否されます。
radius
検索するPのまわりの最大半径です。 すべてのクエリポイントが指定した半径内にあることがわかっている場合、このオプションで半径を指定すると検索スピードを上げることができます。
maxpoints
返されるポイントの最大数です。
cone
検索法線を指定したポイントを拒否する場合に使用される最大円錐角です。
preload
検索の実行前にポイントクラウドファイル全体をメモリにロードするかどうかを制御するトグルです。 事前のロードを無効にするとパフォーマンスが落ちますが、メモリ使用量を改善できることがあります。
出力
handle
ポイントクラウドハンドルで、pcfilterやpciterateのようなポイントクラウドを使用するVOPの入力用です。
Examples
The following examples include this node.
PointCloudIterateAverage Example for Point Cloud Iterate VOP node
このサンプルでは、pciterate VOPを使ってpcopenで返されたポイントを平均化する方法を説明しています。 最初に、ZX平面上の円の内側を1に初期化した浮動小数点"check"チャンネルでポイントクラウドを生成します。 そして、pciterate VOPを使ってループでシェーダ内にポイントをフィルタリングして、"check"チャンネルの値を平均化します。 このサンプルで使われているポイントクラウドは、points.pcとしてアセット内に保存しています。
PointCloudLookup Example for Point Cloud Iterate VOP node
このサンプルでは、pcfilterとpciterateを使って、ボリュームに対してポイントクラウド検索を実行する方法を説明しています。 また、ループの方法と検索で返された値を取り込む方法も説明しています。
See also |