;; create system
(bind-func psystem_create
(lambda (number:i32 texture_id)
(let ((psys:psystem* (halloc))
(particles:particle_t* (halloc number))
(vbo (create_vbo (* number 40) (cast particles i8*) GL_STREAM_DRAW)))
(tfill! psys number texture_id particles vbo)
psys)))