From ecd796df04ac34355c3bcfdb44eac4544f7b6376 Mon Sep 17 00:00:00 2001 From: David Vierra Date: Tue, 20 Jan 2015 10:40:33 -1000 Subject: [PATCH] Reduce distance rayCast advances through chunks from 2000 to a more reasonable maxDistance * 4 Reduces lag when aiming at the sky --- src/mcedit2/util/raycast.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/mcedit2/util/raycast.py b/src/mcedit2/util/raycast.py index 895f028..1b5b29c 100644 --- a/src/mcedit2/util/raycast.py +++ b/src/mcedit2/util/raycast.py @@ -70,7 +70,7 @@ def rayCast(ray, dimension, maxDistance=100, hitAir=False): point = intersects[0][0] - point = advanceToChunk(Ray(point, vector), dimension) + point = advanceToChunk(Ray(point, vector), dimension, maxDistance * 4) currentCX, currentCY, currentCZ = point.intfloor() currentChunk = None @@ -125,10 +125,9 @@ def _cast(origin, vector, maxDistance, stepSize): face[smallAxis] = -faceDirs[smallAxis] -def advanceToChunk(ray, dimension): +def advanceToChunk(ray, dimension, maxDistance): point, vector = ray - distance = 2000 - for pos, face in _cast(point, vector, distance, 16): + for pos, face in _cast(point, vector, maxDistance, 16): x, y, z = pos x >>= 4