From: TimePath Date: Sun, 20 Dec 2015 01:31:41 +0000 (+1100) Subject: hud_shownames: comparing distance squared is even faster X-Git-Tag: xonotic-v0.8.2~1472^2 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=refs%2Fmerge-requests%2F267%2Fhead;p=xonotic%2Fxonotic-data.pk3dir.git hud_shownames: comparing distance squared is even faster --- diff --git a/qcsrc/client/shownames.qc b/qcsrc/client/shownames.qc index dcb6a0692..737535a08 100644 --- a/qcsrc/client/shownames.qc +++ b/qcsrc/client/shownames.qc @@ -69,8 +69,10 @@ void Draw_ShowNames(entity this) bool onscreen = (o.z >= 0 && o.x >= 0 && o.y >= 0 && o.x <= vid_conwidth && o.y <= vid_conheight); if (autocvar_hud_shownames_crosshairdistance) { - float crosshairdistance = sqrt(pow(o.x - vid_conwidth / 2, 2) + pow(o.y - vid_conheight / 2, 2)); - if (autocvar_hud_shownames_crosshairdistance > crosshairdistance) this.pointtime = time; + float d = autocvar_hud_shownames_crosshairdistance; + float w = o.x - vid_conwidth / 2; + float h = o.y - vid_conheight / 2; + if (d * d > w * w + h * h) this.pointtime = time; if (this.pointtime + autocvar_hud_shownames_crosshairdistance_time <= time) overlap = true; else overlap = (autocvar_hud_shownames_crosshairdistance_antioverlap ? overlap : false); // override what antioverlap says unless allowed by cvar. }