Cogito, ergo sum

UE1:RSkeletalMeshEx

From Unreal Wiki, The Unreal Engine Documentation Site
Revision as of 08:08, 23 June 2008 by Raven (Talk | contribs) (Functions)

Jump to: navigation, search

About

I've wrote extended skeletal animation support. Features:

  • returns bone details (position, orientation, etc)
  • returns whenever bone exists or not
  • returns number of bones
  • returns bone name by index


RSkeletalMeshEx static functions

function GetBoneDetails

native static final function GetBoneDetails(SkeletalMesh SkeletalMesh, string BoneName, bool bNoRelative, out rotator Orientation, out vector Position, out float Length, out vector Size);

Returns bone details as output parameters

input parameters:

  • SkeletalMesh - skeletal mesh. Can look like: SkeletalMesh(Mesh)
  • string BoneName - bone name. Eg. "Bip01 R Finger1"
  • bool bNoRelative - if false, it'll also take all root bones position/orientation into account

output parameters

  • rotator Orientation - bone rotation
  • vector Position - bone position
  • float Length - bone lenght
  • vector Size - bone size


function GetBoneLocation

native static final function vector GetBoneLocation(SkeletalMesh SkeletalMesh, string BoneName, bool bNoRelative);

Returns bone position

input parameters:

  • SkeletalMesh - skeletal mesh. Can look like: SkeletalMesh(Mesh)
  • string BoneName - bone name. Eg. "Bip01 R Finger1"
  • bool bNoRelative - if false, it'll also take all root bones


function GetBoneRotation

[coden]ative static final function rotator GetBoneRotation(SkeletalMesh SkeletalMesh, string BoneName, bool bNoRelative);</uscript> Returns bone orientation

input parameters:

  • SkeletalMesh - skeletal mesh. Can look like: SkeletalMesh(Mesh)
  • string BoneName - bone name. Eg. "Bip01 R Finger1"
  • bool bNoRelative - if false, it'll also take all root bones

function BoneExists

native static final function bool BoneExists(SkeletalMesh SkeletalMesh, string BoneName);

Returns whenever given bone exists or not

input parameters:

  • SkeletalMesh - skeletal mesh. Can look like: SkeletalMesh(Mesh)
  • string BoneName - bone name. Eg. "Bip01 R Finger1"

function GetNumBones

native static final function int GetNumBones(SkeletalMesh SkeletalMesh);

Returns number of bones in given skeletal mesh

input parameters:

  • SkeletalMesh - skeletal mesh. Can look like: SkeletalMesh(Mesh)


function GetBoneNameByIndex

native static final function name GetBoneNameByIndex(SkeletalMesh SkeletalMesh, int index);

Returns bone name

input parameters:

  • SkeletalMesh - skeletal mesh. Can look like: SkeletalMesh(Mesh)
  • int index - bone index (use GetNumBones to have list of all bones)

Changelog

  • v 0.0.1 (first public release)
    • added function GetBoneRotation and GetBoneLocation

Download

As always source code is included in zip file.

link: RSkeletalMeshEx (~51kb)

Credits

  • Raven - whole code :)
  • Astyanax - quaternion to rotator function (found somewhere at BU)
  • Smirftsch - being patient to my noob C++ questions :P