lineTex | レンダリングに使用する AA テクスチャ。アンチエイリアスのかかったエフェクトを作るために透明な白のピクセルと不透明な白のピクセルの 1 x 2 テクスチャを使用します。 |
width | ラインの幅。Note: 一定のスクリーンサイズのハンドルを持ちたい場合、 HandleUtilityGetHandleSize を使ってください。 |
points | ラインを構築するためのポイントのリスト |
位置の配列と幅で指定したアンチエイリアスのかかった線を描きます。
注意: 画面サイズに対して固定サイズのハンドルを持ちたい場合、 HandleUtility.GetHandleSize を使用します。
" シーンビューのアンチエイリアス線 "
以下の例では、シーンビューで複数のオブジェクトの間に 1本の線を描画するために DrawAAPolyLine を使用しています。
この例を使用するには、以下のスクリプトを Assets/Editor フォルダーに保存します。
using UnityEngine; using UnityEditor;
[CustomEditor( typeof( DrawConnectedLine ) )] public class DrawConnectedLineEditor : Editor { // Draw lines to the connected game objects that a script has. // if the target object doesnt have any game objects attached // then it draws a line from the Last checked object to 0,0,0
void OnSceneGUI( ) { DrawConnectedLine t = target as DrawConnectedLine;
if( t == null || t.GameObjects == null ) return;
Vector3[] positions = new Vector3[t.GameObjects.Length];
for( int i = 0; i < t.GameObjects.Length; i++ ) { if( t.GameObjects[i] != null ) positions[i] = t.GameObjects[i].transform.position; else positions[i] = Vector3.zero; }
Handles.DrawAAPolyLine( positions ); } }
以下のスクリプトをシーンのゲームオブジェクトにアタッチします。線を描画したいゲームオブジェクトをそれぞれに該当するゲームオブジェクト配列インスペクター上にドラッグアンドドロップします。
using UnityEngine;
[ExecuteInEditMode] public class DrawConnectedLine : MonoBehaviour { public GameObject[] GameObjects; }