hi to all! i am hunting memleaks in my application, and i ended up with an interesting problem.
i have to render the same tree in two or more different context, one main context and other auxiliary ones used once to generate pictures. the problem is that once the geometries are rendered in the auxiliary context, their opengl objects are allocated there, and remains duplicated in memory until the opensg data is destroyed even if i don't need them anymore. i cannot destroy opensg data because i have to use them in the main context, but i would avoid wasting opengl resources uselessly. the problem could be solved deepCloning opensg structures, so when the auxiliary context subrefs them, during next frameexit their opengl objects get deleted. i don't like this solution because i have very huge trees ( ~1GB ) and a deepclone can finish my virtual memory leading to a runtime crash. so remain two possible solutions: 1- sharelists all the context which share the same data 2- forcing the destroy of all useless opengl object in the auxiliary context, once done. but: 1- after a bit of searches in the mailing list i read that "opensg doesn't support sharing resources among contexts", but: - why? - it will be so forever or there are plans to support this feature? 2- i tried to gather all GLIds of all the geometries, texturechunks, shlchunks and programchunks and to destroy them explicitly on the window, but unfortunately all getGLId() are protected except textureChunk's and SHLChunk's. why? is there another way to achieve this purpose? thanks for your time francesco tamagni ------------------------------------------------------------------------- Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 _______________________________________________ Opensg-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/opensg-users
