an up vector needs to have a length, that's what I meant by invalid. 
Please turn this into 2 methods then, if there is one use-case where an argument actually isn't set.