Ejemplo n.º 1
0
class DrawComponent(Component):
    def __init__(self, entity):
        self.mesh = None

    def serialize(self):
        return {"mesh": [i for i in self.mesh["frameColor"]]}

    def load(self, data):
        if not self.mesh:
            try:
                self.mesh = DirectFrame(frameColor=Vec4(*data["mesh"]),
                                        frameSize=(-0.05, 0.05, -0.05, 0.05))
            except:
                # In server
                self.mesh = {"frameColor": data["mesh"]}

    def clear(self):
        super().clear()
        if self.mesh and isinstance(self.mesh, DirectFrame):
            self.mesh.remove_node()
            del self.mesh