Questions about R10 CTrack, CCurve, CKey



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 13/10/2006 at 02:47, xxxxxxxx wrote:

    User Information:
    Cinema 4D Version:   10.0 
    Platform:   Windows  ;   Mac OSX  ; 
    Language(s) :     C++  ;

    ---------
    A few questions that may help alleviate my ignorance of the new animation classes and support for R10.

    1. AnimValue seems to no longer exist and access to this information is now on the CKey directly. What is the correct path for migrating the use of AnimValue setting over to CKey?

    2. In my current code, I need to extend BaseSequences to accomodate animation time extensions, like so:

    BaseTime          T2 =     seq->GetT2();  
    // Extend Sequence to accomodate new animation span, including loop  
    if (T2 < etime)     seq->SetT2(etime);  
    T2 =               seq->GetT3();  
    if (T2 > etime)     etime =     T2;
    

    What is the analog, if any is needed, to accomplish this with the new animation system?

    3. Any caveats that should be mentioned? For instance, AnimateDocument() is used heavily when content is imported with my plugin.

    Thanks,



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 13/10/2006 at 21:34, xxxxxxxx wrote:

    Anyone?

    1. I'm going to qualify this: most of my key settings involve interpolation - strength, left/right, linking left/right. These seem to have disappeared completely. Do I need 'em?

    2. My code needs to do a lot of expanding sequences to insert keys and documents to keep the animation length proper (in R9.x and earlier). Since there are no more 'sequences' (T1/T2/T3 are gone) and CCurve does not have any of this, what do I do about it?

    I have users clamouring for an R10 version and I still have to produce a UB and 64-bit version - up to about 15 compiles now:

    Windows 32-bit: R8.2, R8.5, R9.1, R9.6, R10
    Windows 64-bit: R9.1, R9.6, R10
    MacOSX PPC: R8.2, R8.5, R9.1, R9.6
    MacOSX UB: R9.5, (R9.6), R10

    Sitting on my a.. waiting for answers doesn't help me do anything - there is months of work in that list (just migrating and working out the issues between compiled versions). Not including real bugs and feature implementation. It'd be nice to get the R10 version out of my way to start the more than likely long slog to create a UB version.

    Thank you very much,



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 17/10/2006 at 01:30, xxxxxxxx wrote:

    Quote: 1. I'm going to qualify this: most of my key settings involve interpolation - strength, left/right, linking left/right. These seem to have disappeared completely. Do I need 'em?
    >
    > * * *
    >
    >
    >
    >
    >
    > * * *

    _


    The CKey class represents the massive changes made to the timeline. Some of the interpolation types are gone, you now only have Spline, Linear and Step. You change the interpolation of your keys with

      
    void SetTimeLeft(CCurve *seq, const BaseTime  &t;)  
    void SetTimeRight(CCurve *seq, const BaseTime &t;)  
    void SetValueLeft(CCurve *seq, Real v)  
    void SetValueRight(CCurve *seq, Real v)  
    void SetInterpolation(CCurve *seq, CInterpolation inter)  
    

    The CInterpolation types are

      
    CINTER_SPLINE  
    CINTER_LINEAR  
    CINTER_STEP  
    [CODE]  
      
    AS for your second question, I have to check this out myself.  
      
    cheers,  
    Matthias  
      
      
    


  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 17/10/2006 at 02:20, xxxxxxxx wrote:

    So far, I've found that the timeline expands as needed as long as the BaseDocument times are updated.

    My point on 1. is that Time and Value for interpolation are actually the two things that I don't set! :) I set the left/right, strength, and linking. If these aren't needed, then I can just forego them. The interpolation types have already been updated.

    So far, it sorta works. The plugin seems to be, how do the French say it, 'unstable'. On Windows, not even an error message - C4D just closes. Sometimes it works, sometimes it does this. Obviously there are more changes that will need to be considered - I'll wait for the official R10 SDK documentation.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 03/11/2006 at 11:17, xxxxxxxx wrote:

    Any information on the BaseSequence T1/T2/T3 and how they go with the new CCurve? Now I'm converting four plugins that require animation. Two of these are animation-specific and I am using them as test cases to see what's wrong with my other plugin crashing as they are much simpler.

    Do I need to worry about T1/T2/T3 any longer?

    Thanks,



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 03/11/2006 at 12:18, xxxxxxxx wrote:

    Also, is it correct to assume that all looping data has been moved from the BaseSequence to the CTrack?

    These two plugins are my old animation import/export plugins - they handle just about everything (Value, PLA, Time, etc., tracks). Oh, and they need them before the end of the month - I'd like to have them done in a week so that I can get back to more pressing development.

    You should really consider making the SDK documentation available *before* release! ;)

    Thanks,



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 03/11/2006 at 14:24, xxxxxxxx wrote:

    Further:

    void SetTimeLeft(CCurve *seq, const BaseTime &t;)
    void SetTimeRight(CCurve *seq, const BaseTime &t;)

    With these (and the Get's), BaseTime is now used. Previously these were Real values. How does one make the conversion from the BaseTime to Real and vice versa? The manual doesn't describe what the old Time Left/Right interpolation values represented (nor does the SDK doc). I didn't need to know before - but I'm trying to keep the export format the same and make the appropriate correlations (I am not rewriting this format as it needs to be 'backward compatible').

    P.S.: I'm just gonna keep asking questions until everything's answered or the docs are released. ;D

    Thanks,



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 22/11/2006 at 15:15, xxxxxxxx wrote:

    Any progress in this CAnimation stuff? I also have the problem having to adjust all my animation functions. Standard value keys are simple, but how do I create f.ex. data keys?

    Formerly:

      
         key = BaseKey::Alloc(Sdata);   
         if (!key)   
              return FALSE;  
         kc = key->GetDataInstance();  
         kc->SetData(DATAKEY_VALUE, value);  
         key->SetTime(time);  
         seq->InsertKey(key);  
    

    And now?

    Without any docs it's rather impossible to work it out. Anyone her who writes a wrapper for the old functions? :-)



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 22/11/2006 at 16:40, xxxxxxxx wrote:

    Nothing but the standard keys solved here. Personally, I don't think that the SDK included with R10 is complete with respect to the new animation support. No information what so ever on PLA keys (and I see more and more plugins developers starting to decry this). How long do they think we can hold off our customer bases without impact?

    Yes, rather impossible.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 23/11/2006 at 12:08, xxxxxxxx wrote:

    I have not looked into the PLA question, since I believe it's under investigation by the developers, but perhaps a dirty workaround could be to force C4D to create the PLA keys itself through one of the various Record functions?


Log in to reply