normalize directions; add negligible distance