ya2 · news · projects · code · about

gettext: --no-location
[pmachines.git] / pmachines / items / background.py
1 from itertools import product
2 from ya2.utils.gfx import GfxTools
3
4
5 class Background:
6
7 def __init__(self, name):
8 self._root = GfxTools.build_empty_node('background_root')
9 self._root.reparent_to(render)
10 ncols, nrows = 16, 8
11 start_size, end_size = 5, 2.5
12 offset = 5
13 for col, row in product(range(ncols), range(nrows)):
14 model = GfxTools.build_model(f'assets/models/bam/backgrounds/{name}/background.bam')
15 model.set_scale(end_size / start_size)
16 model.reparent_to(self._root)
17 total_width, total_height = end_size * ncols, end_size * nrows
18 left, bottom = -total_width/2, -total_height/2
19 model.set_pos(left + end_size * col, offset, bottom + end_size * row)
20 self._root.clear_model_nodes()
21 self._root.flatten_strong()
22 self._root.set_srgb_textures()
23
24 def destroy(self):
25 self._root.remove_node()