public bool Convert(string s, out object value)
{
Vector3 v = Vector3.Zero;
value = v;
float f;
string[] splits = s.Split(ZXPCExt.VALUE_DELIMITERS, StringSplitOptions.RemoveEmptyEntries);
int vi = 0;
foreach(var sv in splits) {
if(vi == 3) break;
if(string.IsNullOrWhiteSpace(sv))
continue;
if(float.TryParse(sv, out f)) {
switch(vi) {
case 0: v.X = f; break;
case 1: v.Y = f; break;
case 2: v.Z = f; break;
}
vi++;
}
}
if(vi < 3) return false;
value = v;
return true;
}