ya2 · news · projects · code · about

dds and bam
[pmachines.git] / pmachines / items / background.py
CommitLineData
4894bb48
FC
1from itertools import product
2from panda3d.core import NodePath
64eae9c7 3from lib.lib.p3d.gfx import set_srgb
4894bb48
FC
4
5
6class Background:
7
8 def __init__(self):
5964572b
FC
9 self._root = NodePath('background_root')
10 self._root.reparent_to(render)
a5dc83f4 11 ncols, nrows = 16, 8
4894bb48
FC
12 start_size, end_size = 5, 2.5
13 offset = 5
14 for col, row in product(range(ncols), range(nrows)):
420ce99a 15 model = loader.load_model('assets/models/bam/background/background.bam')
4894bb48 16 model.set_scale(end_size / start_size)
5964572b 17 model.reparent_to(self._root)
4894bb48
FC
18 total_width, total_height = end_size * ncols, end_size * nrows
19 left, bottom = -total_width/2, -total_height/2
1be87278 20 model.set_pos(left + end_size * col, offset, bottom + end_size * row)
5964572b
FC
21 self._root.clear_model_nodes()
22 self._root.flatten_strong()
64eae9c7 23 set_srgb(self._root)
5964572b
FC
24
25 def destroy(self):
26 self._root.remove_node()