シーンビューで 3D GUI の制御と描画のカスタマイズを行うクラス
ハンドルは Unity がシーンビューでオブジェクトを操作するために使用する 3D 制御です。Transform コンポーネント経由でオブジェクトの位置、角度、大きさを操作するための、よく使用するツールとしてビルトイン Handle GUI があります。また、カスタムコンポーネントエディターで使用する独自の Handle GUI を定義することも可能です。このような GUI は手続き的に生成されたシーンの内容や、Waypoint やロケーションマーカーなど「目に見えない」要素、それに関連するオブジェクトのグループを編集するのに非常に役に立つ方法になります。
シーン内で 3D Handle GUI に加えて、2D ボタンをはじめとする 2D GUI を使用することができます。2D GUI の描画は OnSceneGUI
関数内で Handles.BeginGUI と EndGUI で囲んだ中で標準の Unity GUI 呼び出すことで行われます。HandleUtility.GUIPointToWorldRay と HandleUtility.WorldToGUIPoint を使用することで 2D GUI 座標と 3D ワールド座標の相互変換を行うことができます。
centerColor | 中心を示すハンドルに使用する色 |
color | ハンドルの Color (色) を調べる、または、設定します。 |
inverseMatrix | すべてのハンドル操作の逆行列 |
lighting | ハンドルが点灯しているかどうか |
matrix | すべてのハンドル操作の行列 |
secondaryColor | 淡い色は、相互作用が少ない UI、または、ほとんど使用されない (または、まったく使用されない) UI に使用されます。 |
selectedColor | 現在アクティブなハンドルに使用する色 |
xAxisColor | X 座標を操作するハンドルに使用する色 |
yAxisColor | Y 座標を操作するハンドルに使用する色 |
zAxisColor | Z 座標を操作するハンドルに使用する色 |
currentCamera | ビューポートや各種設定をするためにアクセスする現在使用しているカメラ |
ArrowCap | Move ツールで使用されるような Arrow を描画します。 |
BeginGUI | 3D ハンドル GUI 内で 2D GUI の描画を開始します。 |
Button | 3D ボタンを作成します。 |
CircleCap | カメラに面している円を描き、これをハンドル関数に渡します。 |
ClearCamera | カメラをクリアします。 |
ConeCap | コーン(円錐)を描き、これをハンドル関数に渡します。 |
CubeCap | キューブを描き、これをハンドル関数に渡します。 |
CylinderCap | シリンダーを描き、これをハンドル関数に渡します。 |
Disc | マウスでドラッグして 3D ディスクを作ります。 |
DotCap | カメラに面しているドットを描き、これをハンドル関数に渡します。 |
DrawAAConvexPolygon | ポイント配列で指定されたアンチエイリアス Convex ポリゴンを描画します。 |
DrawAAPolyLine | 位置の配列と幅で指定したアンチエイリアスのかかった線を描きます。 |
DrawBezier | 指定した接線と始点と終点を通るテクスチャベジェ曲線を描画します。 |
DrawCamera | 矩形内部にカメラを描画します。 |
DrawDottedLine | p1 から p2 に点線を描画します。 |
DrawDottedLines | 含まれる線分を点線で描画します。 |
DrawLine | p1 から p2 にラインを描画します。 |
DrawLines | 含まれる線分を描画します。 |
DrawPolyLine | すべての points を通るラインを描画します。 |
DrawSolidArc | 3D 空間に扇形を描画します。 |
DrawSolidDisc | 中の空間まで色のついた、フラットな円を 3D 空間に描画します。 |
DrawSolidRectangleWithOutline | 3D 空間に太い実線の矩形を描画します。 |
DrawWireArc | 3D 空間に円弧を描画します。 |
DrawWireCube | center と size からキューブを描画します |
DrawWireDisc | 3D 空間でフラットな円盤のアウトラインを描画します。 |
EndGUI | 現在のハンドルカメラ上で 2D GUI のブロックを終了し、3D ハンドル GUI に戻ります。 |
FreeMoveHandle | 制約のない移動ハンドルを作成します。 |
FreeRotateHandle | 制約のない回転ハンドルを作成します。 |
GetMainGameViewSize | メインのゲームビューの幅と高さを取得します。 |
Label | 3D 空間に配置されるテキスト ラベルを作成します。 |
MakeBezierPoints | ベジェ曲線を表示するポイントの配列を返します。Handles.DrawBezier を参照してください。 |
PositionHandle | 3D シーンビューの Position ハンドルを作成します。 |
RadiusHandle | シーンビューに Radius ハンドルを作成します。 |
RotationHandle | シーンビューの Rotation ハンドルを作ります。 |
ScaleHandle | シーンビューの Scale ハンドルを作成します。 |
ScaleSlider | ディレクショナルスケールスライダーを作成します。 |
ScaleValueHandle | シングルフロートのドラッグ可能なハンドルを作成します。 |
SelectionFrame | カメラに面しているセレクションフレームを描画します。 |
SetCamera | すべての Handle と Gizmo がその設定で描画されるように現在のカメラを設定してください。 |
Slider | 3D スライダーを作成します。 |
Slider2D | 2D 平面でハンドルをスライドします。 |
SnapValue | val 値を snap の最も近い倍数に四捨五入します (snap の値は正数のみ可)。 |
SphereCap | スフィア(球体)を描き、これをハンドル関数に渡します。 |
DrawCapFunction | 例えば、ハンドルを描画するために使用する関数 Handles.RectangleCap |