Yes, you're right...I can reproduce a change of ID when deleting an object
and re-opening a scene. However, I would not dismiss the object GUID, which
appears to persists between sessions despite the change in the object ID
value. In the below snippet the sphere object changed ID but not GUID.

# Name: cylinder
# ID: 114
# GUID: {090F2A9A-D1FC-4112-ACC5-9345BEB48954}
#
# Name: disc
# ID: 92
# GUID: {D03EF191-3962-4540-929D-F5438CE59D79}
#
# Name: torus1
# ID: 68
# GUID: {1AC14CC7-1175-4E30-9CDD-BC0C0C1DE6EA}
#
# Name: sphere
# ID: 80
# GUID: {CC63558A-D5A3-4F55-8621-6D428FE2743A}
# --------------------

# Delete cylinder, save and re-open scene

# Name: disc
# ID: 92
# GUID: {D03EF191-3962-4540-929D-F5438CE59D79}
#
# Name: torus1
# ID: 69
# GUID: {1AC14CC7-1175-4E30-9CDD-BC0C0C1DE6EA}
#
# Name: sphere
# ID: 99
# GUID: {CC63558A-D5A3-4F55-8621-6D428FE2743A}
#
# --------------------




On Tue, Jun 4, 2013 at 6:38 PM, Matt Lind <ml...@carbinestudios.com> wrote:

> This is not safe between sessions as IDs are dynamically generated and
> assigned in the order objects were created in the scene.  If an older
> object is deleted and the scene reopened, everything after it will have a
> new ID.****
>
> ** **
>
> Matt****
>
> ** **
>
> ** **
>
> ** **
>
> *From:* softimage-boun...@listproc.autodesk.com [mailto:
> softimage-boun...@listproc.autodesk.com] *On Behalf Of *Ciaran Moloney
> *Sent:* Tuesday, June 04, 2013 8:52 AM
> *To:* softimage@listproc.autodesk.com
> *Subject:* Re: Persistent objects ids****
>
> ** **
>
> Hi,****
>
> did you try XSIUtils.DataRepository.GetIdentifier() passing the
> siObjectGUID argument?****
>
> I've used this to keep track of ICE nodes without relying on name strings.
> It's persistent between sessions and is preserved when models are exported.
> ****
>
> Works like a charm.****
>
> The only problem is that it's possibly a bit tricky to get a pointer back
> to the object, since you need to know what you're looking for. I use 
> Application.FindObjects()
> to get a collection of objects of this class, then check for the ObjectGUID
> I'm looking for.****
>
> ** **
>
> Ciaran****
>
> ** **
>
> ** **
>
> On Tue, Jun 4, 2013 at 12:49 PM, Michal Doniec <doni...@gmail.com> wrote:*
> ***
>
> Hi,****
>
> ** **
>
> Is there any obvious way I am missing which would allow me to identify
> objects in the scene, but not by name?****
>
> Something like ObjectID, but persistent between scene saves and loads. I
> can generate UUID or something similar using "ObjectAdded" event and store
> custom property but I'd rather avoid it.****
>
> ** **
>
> I want to be able to track objects regardless if they were renamed or not.
> ****
>
> ** **
>
> --
> ----------
> Michal
> http://uk.linkedin.com/in/mdoniec ****
>
> ** **
>

Reply via email to