Pre-allocate vertex and element lists in build_geo

This commit is contained in:
Jared Miller 2026-02-12 21:11:18 -05:00
parent 44e4219b04
commit f3c2b6b695
Signed by: shmup
GPG key ID: 22B5C6D66A38B06C

View file

@ -528,14 +528,17 @@ class Art:
x2, y2 = left_x, bottom_y x2, y2 = left_x, bottom_y
x3, y3 = right_x, bottom_y x3, y3 = right_x, bottom_y
# Z of all layers is 0, layer Z set in shader # Z of all layers is 0, layer Z set in shader
verts = [x0, y0, 0] verts = [x0, y0, 0, x1, y1, 0, x2, y2, 0, x3, y3, 0]
verts += [x1, y1, 0]
verts += [x2, y2, 0]
verts += [x3, y3, 0]
self.vert_array[layer][tile_y][tile_x] = verts self.vert_array[layer][tile_y][tile_x] = verts
# vertex elements # vertex elements
elements = [vert_index, vert_index + 1, vert_index + 2] elements = [
elements += [vert_index + 1, vert_index + 2, vert_index + 3] vert_index,
vert_index + 1,
vert_index + 2,
vert_index + 1,
vert_index + 2,
vert_index + 3,
]
self.elem_array[elem_index : elem_index + ELEM_STRIDE] = elements self.elem_array[elem_index : elem_index + ELEM_STRIDE] = elements
elem_index += ELEM_STRIDE elem_index += ELEM_STRIDE
# 4 verts in a quad # 4 verts in a quad