Visibility.FrustumCullSpheres メソッド

定義

OpenGL ES ModelView-Projection 行列 (視錐台を暗黙的に記述する) と球の一覧を指定して、視錐台と交差する球を決定します。

[Android.Runtime.Register("frustumCullSpheres", "([FI[FII[III)I", "")]
public static int FrustumCullSpheres (float[]? mvp, int mvpOffset, float[]? spheres, int spheresOffset, int spheresCount, int[]? results, int resultsOffset, int resultsCapacity);
[<Android.Runtime.Register("frustumCullSpheres", "([FI[FII[III)I", "")>]
static member FrustumCullSpheres : single[] * int * single[] * int * int * int[] * int * int -> int

パラメーター

mvp
Single[]

mode-view-projection 行列を含む float 配列

mvpOffset
Int32

mvp 配列内の mvp データのオフセット。

spheres
Single[]

球データを含む float 配列。

spheresOffset
Int32

球データが開始する球配列へのオフセット

spheresCount
Int32

カリングする球の数。

results
Int32[]

円錐台内に完全に含まれているか、または円錐台と交差する球のインデックスを含む整数配列。

resultsOffset
Int32

結果が開始される結果配列へのオフセット。

resultsCapacity
Int32

結果を格納するために使用できる配列要素の数。

戻り値

視錐台と交差した球の数。 resultsCapacity より大きくすることができます。この場合、最初の resultsCapacity 結果のみが結果配列に書き込まれます。

属性

例外

mvp が null、mvpOffset mvp.length - 16、spheres が null、spheresOffset spheres.length - sphereCount、results が null、resultsOffset results.length - resultsCapacity の場合。

注釈

OpenGL ES ModelView-Projection 行列 (視錐台を暗黙的に記述する) と球の一覧を指定して、視錐台と交差する球を決定します。

ModelView-Projection 行列は、射影行列に ModelView 行列 (その順序で) を乗算することによって計算できます。 現在の ModelView マトリックスとプロジェクション マトリックスを取得するには、いくつかの方法があります。 最も一般的に適用可能な方法は、アプリケーション コード内の現在のマトリックスを追跡することです。 それが便利でない場合は、OpenGL ES <から現在のマトリックスを読み取るために使用できるオプションの OpenGL ES 拡張機能が 2 つあります。ul><li>GL10Ext.glQueryMatrixxOES <li>GL11.GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OESと GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES </ul> マトリックスを読み戻す際の問題は、アプリケーションが使用する拡張機能をサポートするデバイスでのみ動作することです。

視錐台は、ビューに表示されるワールド空間の部分を定義する 6 辺の切り捨てピラミッドです。

球は、ワールド空間座標では x、y、z、r の 4 つの浮動小数点値として記述されます。 R は球の半径です。

android.opengl.Visibility.frustumCullSpheres(float[], int, float[], int, int, int[], int, int)Java ドキュメント。

このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。

適用対象