Esempio n. 1
0
void anm_destroy_node_tree(struct anm_node *tree)
{
    struct anm_node *c, *tmp;

    if(!tree) return;

    c = tree->child;
    while(c) {
        tmp = c;
        c = c->next;

        anm_destroy_node_tree(tmp);
    }
    anm_destroy_node(tree);
}
Esempio n. 2
0
int psys_init(struct psys_emitter *em)
{
	memset(em, 0, sizeof *em);

	if(anm_init_node(&em->prs) == -1) {
		return -1;
	}
	if(psys_init_attr(&em->attr) == -1) {
		anm_destroy_node(&em->prs);
		return -1;
	}

	em->spawn = 0;	/* no custom spawning, just the defaults */
	em->update = update_particle;

	em->draw = psys_gl_draw;
	em->draw_start = psys_gl_draw_start;
	em->draw_end = psys_gl_draw_end;
	return 0;
}
Esempio n. 3
0
void anm_free_node(struct anm_node *node)
{
    anm_destroy_node(node);
    free(node);
}