THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 10/01/2005 at 09:15, xxxxxxxx wrote:
Cinema 4D Version: 9.012
Platform: Windows ;
Language(s) : C++ ;
with 8.5 the Unique IP System was introduced to track objects over the course of an animation. There is information about how to generate this information from a Plugin so it works with that system, but I did not find any information about how to use this information on my own.
Is there any info about the recommended way of using this information to set up my own object identifiers? I tried to just concatenate the numbers together in a sequence, but sometimes objects on the same level have the same id, e.g. all root level objects just return 0. I could just come up with something on my own (like adding the number of objects before the one I'm looking at to the ID), but I'd rather try to stick with the official way, if there is one. Mikael?
On 10/01/2005 at 10:41, xxxxxxxx wrote:
I don´t really understand what you actually want to do. What should be the effect? Where are you using it? dialog, tool, object, track? Afaik the unique IP system is useful for particle stuff like TP (sb correct me if I´m wrong).
On 10/01/2005 at 11:20, xxxxxxxx wrote:
I am writing an exporter. The exporter writes Objects into separate files and for objects that are not deformed and have no PLA applied I want to track an object over the course of an animation so I can reuse the Object files. Hope this was clear.
On 10/01/2005 at 11:24, xxxxxxxx wrote:
ah ok. But what do you need an own UniqueIP for? Why don´t you take the unique IP the objects already have (GetUniqueIP())? And after the SDK docu most objects don´t need a unique IP as the structure is static.
On 10/01/2005 at 11:32, xxxxxxxx wrote:
regarding the *most* objects. Well yes, for most objects it is actually sufficient to just take the pointer for identification, but I need something that works for *all* objects
I was not asking about setting up setting up my own UniqueIP, but how to use the existing system. As in the example I gave, let's say you have a simple scene with just a few objects at the root level. They all return UniqueIP = 0, so I get the same id for all objects which is not exactly helpful. This can happen at every level of a hierarchy. This seems to indicate that there is smoething more I have to do, to make use of this system and I just wanted to know what the recommended way is.
On 10/01/2005 at 11:39, xxxxxxxx wrote:
actually no, you don´t have to do anything. GetUniqueIP() should return the unique IP assigned. The assignement is (after the SDK) done internally, so generators (or plugin gens etc.) must set the OBJECT_UNIQUEENUMERATION flag and assign Unique IDs (LONG typedef) to all objects they return.
So, if there is no IP for the object, you can either assign your own Unique IP to the object with SetUniqueIP() (which I think is MAYBE not that good, if it´s really all done internally) or this may indicate that the object does not need a unique IP (that would be the reason why the generator has not set a unique IP internally).
Probably Trial & Error in this case.
Well, good luck with it, I have no other thoughts on this. Let me know how you solved it if it doesn´t work that way, would be interesting to know.