FbxClip (object)¶
The FbxClip object manages loading animation data from an Fbx file and generating the curve values that can ben be evaluated to drive character poses.
/*
** Example: fbxClip.kl
*/
require Fbx, FbxHelpers;
operator entry(){
  // Load an Fbx file to provide the clip data. 
  FilePath path = FilePath("${FABRIC_SCENE_GRAPH_DIR}/Python/Apps/Resources/Fbx/BendyBox.fbx").expandEnvVars();
  FbxClip fbxClip(path.string());
  // Report a descrition string of the clip contents after loading.
  report(fbxClip.getDesc());
  // Evaluate the clip over time, reporiting the generated clip values
  Vec2 timeRange = fbxClip.getTimeRange();
  report("timeRange:" + timeRange);
  Integer keyIndices[][];
  Integer numSamples = 6;
  for(Integer i=0; i<=numSamples; i++){
    Scalar time = Math_linearInterpolate(timeRange.x, timeRange.y, Scalar(i)/Scalar(numSamples));
    IClipValues clipValues = fbxClip.evaluate(time, keyIndices);
    report("time:" + time);
    report(clipValues.getDesc());
  }
}
/*
** Output:
FbxClip { 
  animationLayerName: 
  Clip:{ 
    Bone002:    KeyframeTrackSet { 
      name: Bone002,
      valueType: Euler,
      flags: 8,
      tracks:[ 
        KeyframeTrack { 
          name: "euler.x",
          color: {r:+1.0,g:+0.0,b:+0.0,a:+1.0},
          defaultValue: +0.0,
          numKeys:3,
        },
        KeyframeTrack { 
          name: "euler.y",
          color: {r:+0.0,g:+1.0,b:+0.0,a:+1.0},
          defaultValue: +0.0,
          numKeys:3,
        },
        KeyframeTrack { 
          name: "euler.z",
          color: {r:+0.0,g:+0.0,b:+1.0,a:+1.0},
          defaultValue: +0.0,
          numKeys:3,
        },
      ],
    },
  }
}
timeRange:{x:+0.0,y:+3.333}
time:+0.0
ClipValues:{ 
  Bone002={v:{x:-0.619608e-5,y:+5.140464e-8,z:+0.745868e-2},w:+1.0} 
}
time:+0.5555
ClipValues:{ 
  Bone002={v:{x:-0.604055e-5,y:-1.382781e-6,z:+0.238494},w:+0.971191} 
}
time:+1.111
ClipValues:{ 
  Bone002={v:{x:-0.55572e-5,y:-2.742279e-6,z:+0.456604},w:+0.889648} 
}
time:+1.6665
ClipValues:{ 
  Bone002={v:{x:-0.477209e-5,y:-0.395253e-5,z:+0.649902},w:+0.760009} 
}
time:+2.222
ClipValues:{ 
  Bone002={v:{x:-0.477116e-5,y:-0.395346e-5,z:+0.650024},w:+0.759887} 
}
time:+2.7775
ClipValues:{ 
  Bone002={v:{x:-0.583846e-5,y:-2.077315e-6,z:+0.349975},w:+0.936767} 
}
time:+3.333
ClipValues:{ 
  Bone002={v:{x:-0.619608e-5,y:+5.140464e-8,z:+0.745868e-2},w:+1.0} 
}
*/
Members¶
| String | name | |
| ITrackSet[String] | trackSets | |
| Integer[][] | keyIndices | |
| String | filePath | |
| FbxHandle | handle | |
| ImporterIdentifier[] | identifiers | |
| String | animationLayerName | 
Methods¶
| FbxClip ( in FbxClip other ) | |
| FbxClip ( in FbxHandle handle ) | |
| FbxClip ( in String filePath ) | |
| FbxClip ( in String filePath, in Scalar scaleFactor ) | |
| FbxClip () | |
| FbxClip | clone ? () | 
| String | getDesc ? ( in String indent ) | 
| String | getDesc ? () | 
| String | getFilePath ? () | 
| Clip | toClip ? () | 
| IClip | toIClip ? () | 
Methods in detail¶
copy constructor
FbxClip ( in FbxHandle handle )
Constructor from a file handle. Construct a clip from an already open file handle. This enables a file handle already open to be used to construct a clip. The file handle might come from an FbxCharacter that was already constructed.
FbxClip ( in String filePath )
Constructor from a file path.
| filePath | the path to the fbx file on disk to load | 
FbxClip ( in String filePath, in Scalar scaleFactor )
Constructor from a file path and scale factor.
注釈
The scale factor can be used to scale animation to fit a character exported at a different scale factor.
| filePath | the path to the fbx file on disk to load | 
| scaleFactor | The scale factor to apply to the animation data (obsolete) | 
FbxClip ()
default constructor
clone method
String FbxClip.getDesc? ( in String indent )
Generates a Description string of this FbxClip.
| indent | The indentation to use when generating the string. | 
Generates a Description string of this FbxClip.
String FbxClip.getFilePath? ()
Returns the file path used to construct the FbxClip
returns this FbxClip as an Clip
