If it's not possible with the [part_...] objects is it with the Gem-OpenGl objects, or with pdp-openGl?
check out the last couple examples in the pdp_opengl lib. there's some particle stuff using the 3dp_for looping object and pd arrays. (get the 0.12.2 test release in the test/ dir for the latest ex.)