Skip to content

Commit e2ffcc7

Browse files
committed
Optimize rasterize alpha/sigma guard
1 parent 6c3700f commit e2ffcc7

1 file changed

Lines changed: 10 additions & 10 deletions

File tree

‎splax/_rasterize/_kernels.py‎

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -199,16 +199,16 @@ def _rasterize_kernel(
199199
dy = s[1] - py
200200
sigma = 0.5 * (s[3] * dx * dx + s[5] * dy * dy) + s[4] * dx * dy
201201
alpha = wp.min(MAX_ALPHA, s[2] * wp.exp(-sigma))
202-
if sigma < 0.0 or alpha < ALPHA_THRESHOLD:
203-
continue
204-
next_T = T * (1.0 - alpha)
205-
if next_T <= MIN_TRANSMITTANCE:
206-
done = wp.bool(True)
207-
break
208-
vis = alpha * T
209-
pix_out = pix_out + color_tile[t] * vis
210-
T = next_T
211-
cur_idx = batch_start + t
202+
# Sigma/alpha guard is faster than a conditional continue in Warp
203+
if sigma >= 0.0 and alpha >= ALPHA_THRESHOLD:
204+
next_T = T * (1.0 - alpha)
205+
if next_T <= MIN_TRANSMITTANCE:
206+
done = wp.bool(True)
207+
break
208+
vis = alpha * T
209+
pix_out = pix_out + color_tile[t] * vis
210+
T = next_T
211+
cur_idx = batch_start + t
212212

213213
if inside:
214214
bg = background[wp.where(sel_bg, image_id, 0)]

0 commit comments

Comments
 (0)