Tôi sử dụng kiểm tra bình phương khoảng cách cho tất cả các kiểm tra khoảng cách (chiều dài vector3) của tôi, do hiệu suất tăng từ việc không phát sinh căn bậc hai (như trong kiểm tra độ dài đơn giản).
Từ vẻ bề ngoài của nó, kiểm tra khoảng cách bình phương hoạt động tốt trong mọi tình huống:
if x^2 < y^2, then x < y, even when 0 < (x or y) < 1
Tôi không xem xét các tình huống trong đó x hoặc y nhỏ hơn 0, vì khoảng cách và bình phương khoảng cách luôn luôn dương.
Vì nó hoạt động, có vẻ như không bao giờ cần kiểm tra khoảng cách, nhưng tôi có cảm giác khó chịu rằng tôi đang thiếu thứ gì đó. Điều này sẽ vẫn giữ trong các tình huống quan trọng chính xác?