MAXScript Extensions > MAXScript Extensions for character studio > Biped MAXScript Extensions > Biped Footsteps and Footprints >

# Biped Footprints

| Character Studio - Quick Navigation

Methods

    biped.addFootprint <biped_ctrl><matrix3> [append:<boolean>]

Creates a single footprint for the biped, where matrix3 specifies the position and rotation of the footstep. The scale portion of the matrix3 is ignored. Whether a left or right footstep is created depends on the value of biped.fsAddSide (see below). The length and timing of the footstep depends on biped’s fsGroundDuration and fsAirDuration property values.

The append keyword argument specifies where in time the footstep is added. If true (the default) then the footstep is appended as the last footstep, else it is inserted at the current time.

Note

Creates a single footprint for the Biped.

Global Properties

    biped.fsAddSide Integer Default:0
    0 - Start Right
    1 - Start Left

Note

For multiple footstep creation, the starting foot needs to be identified. There is a UI radio button in the Multiple Footstep Creation dialog "Start Right/Start Left". The biped global property, fsAddSide, exposes access to this UI element.

Note

This property also effects the start foot when manually creating footsteps in the viewports and when using biped.addFootprint. If the biped.fsAddSide is 1, a left footstep is created. If 0, a right footstep is created. When you create a footstep in the viewports or by using biped.addFootprint, the value of biped.fsAddSide is flipped, resulting in alternating footsteps being created by default.

Methods

    biped.multipleFSDlg <biped_ctrl>

Displays the Multiple Footstep Creation dialog

    biped.getMultipleFSParams <gait_type_name>

Returns an instance of MultFprintParams, gait_type_name can be#walk,#runor#jump. For information on MultFprintParams andgait_type_name see Biped MultFprintParams Class.

The following example will obtain the MultipleFSParams for a walk cycle, set several of its values and then show all of the properties.

EXAMPLE
    walk = biped.getMultipleFSParams #walk
    walk.numFootsteps= 5
    walk.paramStrideWidth= 2.5
    walk.paramStrideLength1= .6
    walk.actualStrideHeight1= .6
    walk.cycle1= 6
    walk.paramStrideLength2= .7
    walk.actualStrideHeight2= .7
    walk.cycle2= 7
    walk.autoTiming= true
    walk.interpTiming= true
    walk.alternate= true
    walk.multiInsertInTime= true
    showProperties walk

Methods

    biped.addMultipleFootprints <biped_ctrl> <MultFprintParams>

Create footsteps for a Biped based on the MultFprintParams value

    biped.newFootprintKeys <biped_ctrl>

Activates all inactive footsteps. Activation creates default keys for any footsteps that do not have them. If a footstep does not have keys, it is displayed as bright green (right foot) or bright blue (left foot). After keys are created for the footsteps, the footsteps change color to pastel green and pastel blue.

    biped.convertToFootSteps <biped_ctrl> [keyPerFrame:<false>] [flattenToZ:<true>]

Converts a freeform animation to footsteps. If keyPerFrame is true, keys are created at every frame, and footsteps are extracted based on foot IK Blend values equal to 1. If flattenToZ is true, the entire biped is repositioned to place the footsteps at Z=0.

    biped.convertToFreeform <biped_ctrl> [keyPerFrame:<false>]

Converts a freeform animation to footsteps. If keyPerFrame is true , keys are created at every frame.

## Bending/Scaling Footprints

    biped.bendFootprints <biped_ctrl> <float> --angle in degrees

Bend the Footprints of the biped whose controller has been supplied as argument at the specified angle.

    biped.scaleFootprints <biped_ctrl> <float> --angle in degrees

Scale the Footprints of the biped whose controller has been supplied as argument at the specified angle.

The following example will create a biped, create 10 footsteps and then have Biped create default keys for the footsteps.

EXAMPLE
    -- create a Biped
    bipObj = biped.createNew 100 100 [0,0,0]  -- get the transform controller for the Biped
    bip = bipObj.transform.controller   -- get the multiple footstep parameters interface
    mfsp=biped.getMultipleFSParams #walk   -- set the number of footsteps to 10
    mfsp.numFootsteps=10   -- create the inactive footsteps
    biped.addMultipleFootprintsbip mfsp   -- create the Biped keys for inactive footsteps
    biped.newFootprintKeys bip

#### See Also

- Biped Controllers

- Biped MultFprintParams Class

- Biped Keys

- Biped MaxScript Extensions

- MAXScript Extensions in character studio