Cage opened this issue on Dec 20, 2006 · 1232 posts
Spanki posted Thu, 03 April 2008 at 4:23 PM
It's not generated (merely 'fetched' from Poser and converted to Vector() format, in this case) until it's needed by some other call, including mesh.GetVertices()
EDIT: UNTIL you've called that (or some internal function calls it), my internal pointer is set to 'None'.
Once it's been created, I keep it around for future use, unless/until your mesh variable falls out of scope, or you intentionally 'del' it, or the new mesh.StructureChanged() call is made.
But for practical purposes, there's no reason to wait, unless you're going to free up some other list to make more room before getting that list.
ANOTHER EDIT: ...but keep in mind that now that I'm always returning clones of my internal lists, there would actually be two copies of it in memory, so it really will depend a lot on what a particular script is doing and when it needs some list or another. The intention behind the Mesh class (in general) was to keep you from having to worry about various lists, unless you actually have some other use for it.
Cinema4D Plugins (Home of Riptide, Riptide Pro, Undertow, Morph Mill, KyamaSlide and I/Ogre plugins) Poser products Freelance Modelling, Poser Rigging, UV-mapping work for hire.