private void validateFloor() { if (_floorUpper == Vector3.Empty) { _floorUpper = new Vector3(0, 1, 0); } if (_floorParallel == Vector3.Empty) { _floorParallel = new Vector3(1, 0, 0); } _floorUpper.Normalize(); _floorParallel.Normalize(); float diff = Vector3.Dot(_floorUpper, _floorParallel); if (diff == 0) { _floorParallel = VectorEx.GetOneOfNormals(_floorUpper); } else { _floorParallel -= FloorUpper * diff; _floorParallel.Normalize(); } }