Proper Labels

public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
pos.height = EditorGUIUtility.singleLineHeight;

        SerializedProperty X = prop.FindPropertyRelative("X");
        SerializedProperty Z = prop.FindPropertyRelative("Z");


        EditorGUI.BeginProperty(pos, label, prop);

        pos = EditorGUI.PrefixLabel(pos, label);

        int propWidth = (int)pos.width / 2;

        EditorGUIUtility.labelWidth = 25;

        Rect r1, r2;
        r1 = r2 = pos;

        r1.width = r2.width = propWidth;
        r2.x += propWidth;

        EditorGUI.PropertyField(r1, X, new GUIContent("X"));
        EditorGUI.PropertyField(r2, Z, new GUIContent("Z"));

        EditorGUI.EndProperty();
    }

    // Outputing
    public VectorXZ[] ArrayRezult;
    public VectorXZ Rezult;
    public Vector2[] V2Array;
    public Vector2 V2;

alt text

        pos = EditorGUI.IndentedRect(pos);
        EditorGUI.indentLevel = 0;