Just an idea, but I was reading through the docs for the <file> section of DarkGDK.. it actually has commands(no idea if they work or not) that create a "pak file" that can contain "whole files and directories"
The commands are dbReadFileBlock, dbReadDirBlock, dbWriteFileBlock, dbWriteDirBlock.. can use dbOpen and dbClose to open a file that is a "pak" file so the docs say, would need to read the commands a little more carefully and do some experimenting..
Perhaps just using GDK to do it, unpack you media on program start, then delete/re-pack at the end(although you would need to make sure that it would be deleted/re-packed even if the program crashed unexpectedly) .... again, I dont know if those commands would work, or how they work as I've not played with them, but assuming they do what they say, it would be an easy way around the problem... although again not the best security-wise, if it works, it would be a perfectly acceptable way of storing all of you media(3d models, images, audio etc)
If it ain't broke.... DONT FIX IT !!!