if you took a quick-n-dirty way to make U3D via IDTF text files and IDTFConverter,
then one possible next step is to exclude lengthy IDTF files from the workflow and fill
the sort-of binary structures IDTFConverter parses them into directly, by tearing
the parser part out of the IDTFConverter and integrating the remaining code into your program
or making a separate library out of it.
I have used the approach and it sort-of-worked for me.
If you'd like to test it on yourself - you are welcome to contact me by e-mail
master at iaas.msu.ru.
Guinea pigs aspiring for a research career are always welcome ;)
A variant of my cmake/autotools repacking of sources with addition of static IDTF library and an IDTFGen.cpp example of its use (as opposed to HelloWorld.cpp that uses U3D libs directly) is at http://www.iaas.msu.ru/tmp/u3d/u3d-1.3.tar.gz