IKBoost

From LightWiki

Jump to: navigation, search

Contents

Adding IKBoost

Activate the IKBoost (called IKB from now on) tool by pressing ctrl-b or Setup>IK>IKBoost in the menus. Right-click on the Mesh or Null which you wish to add IKB to. 'Apply IK Booster' should appear in a box. Click it and IKB will be applied to the item and its children. This adds IK_Booster to the item's Custom Object Plugin list (found in the Object Properties Panel). If you should want to copy your rig to another character in the scene with the same hierarchy, you can use the Copy and Paste functions found in the Edit menu for the Custom object plugins. To remove IKB, just remove the plugin from the item. IKB can obly be applied to meshes or nulls, so if you want to use it with a Light or Camera parent them to a Null first.

Image:ApplyIKB.jpg

The Controller

Image:IKBControllers.jpg

If you've just added IKB to a hierarchy, each item in the hierarchy which isn't locked from selection will have a circle around its pivot point, except the root of the hierarchy, which will have a square (You can lock items in the Scene Editor, locked items have a little padlock next to them in the Current item list). A circle means the item is controlled using its rotation, whereas a square means the item is controlled by its movement. You can change what the controller does in the Controller menu. Clicking on the controller will select it, turning it red, and if it's a Move controller, X Y and Z will appear on its right. If it's a Rotate controller, 3 numbers will appear on its right, the current value of Heading, Pitch and Bank for that item.

If you click and drag on a Move controller this will move the item, with all its children following. If you click and drag on a Rotate controller this will move the item, but the hierarchy will deform to try to compensate, much like moving a puppet.

Clicking and dragging on the letters/numbers will constrain movement/rotation to that axis.

Also you can constrain movement using the X,Y,Z of the Numeric Panel. If you turn off the X, you will only be able to move IKB controllers in the global Y and Z directions.

You can edit multiple controllers settings by ctrl-LMB clicking the controllers that you want to edit. They'll get little orange dots on them to indicate they have been selected, then you can Fix them, add Bake Spots for them, edit their dynamic properties etc.

The Controller Menu

Image:IKBControllerMenu.jpg

If you right-click a controller, then a menu appears, made up like this:

  • Fix - This locks the item in place while posing, so dragging connected items will be limited by this. You can however still drag the item around yourself. Use for locking a hand to a table for example as you pose a character. You can temporarily turn this off for all fixed items by holding Ctrl down as you drag on a controller. Releasing Ctrl restores normal operation when dragging a controller.
  • IKStop - This prevents any items further down the hierarchy affecting items above the IKstop. Useful to allow you to move an arm around without affecting the rest of the figure.
  • FKControl - This means instead of moving the item, rotate it instead, as in a standard Foward Kinematic hierarchy.
  • Handle - Toggle the IKB Handle on/off
  • Mode - Containing
    • Move - Make this item be a moving controlled item. If you drag on it, it will move away from it's parent, taking it's children with it.
    • Rotate - Make this a rotating controlled item. If you drag on it, the parent and children will rotate to try to follow it.
    • Quaternion - Use Quaternion maths to ensure the item rotates in a linear fashion, not swinging around one axis then another between poses.
    • User Axis - Rotate this item around a user-defined axis instead of its normal H P or B. If you choose this, Set User Axis will be available in the Controller Options menu to allow you to choose the axis.

Motions tools

Consisting of:

  • Pose Copy From Item name - Allows you to copy or mirror a pose from another item or sub-hierarchy.
  • Motion Copy From Item name - Allows you to copy or mirror a motion from another item or sub-hierarchy.
  • Pose Save - Save the current pose of the item and its children to a text file.
  • Pose Load - Load the pose from a text file to the current item.
  • Motion Save - Save the motion from a selected range of frames from the item and its children.
  • Motion Load - Load a motion from a text file.

Options

This contains the below options. To select the item referred to in Set Goal/Set IK Target/Setting copy from, select the item to be referred to just before selecting the actual item. So if you want to set HeadBone as the Goal of HandBone, select the Head bone, then select Handbone and open the Options menu for HandBone. For some reason the selection does not always work first time (it may be using middle mouse button selection doesn't work with this yet), it seems to be a bug, so repeat this till the correct item is referred to in the menu.

    • Set User Axis - This is only available if User axis is enabled in the Controller Mode menu. It brings up a panel which allows you to numerically set the User Axis, or press a button to get the axis from the current view direction, which is easier to visualize.
    • Set Goal item name - This is only visible if the selected item is fixed. It allows you to select anything in the connected hierarchy as an IK Goal. This means the selected item will try to reach for the goal item, dragging other items along the chain with it, up to but not including an item set as an IK stop. When this is set, the next time you move the goal item, the selected item will try to reach for it. If an item has a goal, the controller will have a G at its centre. It does not work between keys, only on posing a hierarchy, so you should bake the period between keys. However, if you move the item which has the Goal set, the GOAL will follow it, coming away from it's parent. Imagine you have a gun in a holster. You set a hand to have the gun as an IKB Goal. If you move the gun, the hand will follow, the arm acting in an IK fashion. However, if you move the hand, the gun will follow it, coming away from its parent.
    • SetIKTarget item name - This is always available and this makes the selected object control the named IK Target. As you click and drag on the selected item's circle controller, the IK target will turn instead. The controller will have a T at the centre if this is on for an item. Click-dragging on the angle values will not rotate the IK Target, just rotate the controlling item. Since you can only drag in two directions, up-down/left-right, it's a good idea to lock one or two of the channels on the controlled item, as this will mean you can control the HP with the mouse, for example.
    • Setting Copy From item name - This copies all the IKB settings from the first item onto the selected item, including rotation limits, the Fix state, dynamics settings and so on.
    • Rename - Rename this item.
    • Dynamics Edit - This changes the controller to Dynamics edit mode. See below.
    • Controller Edit - This sends IKB into Controller edit mode. See below.

A toggleable item (such as Fix) will have brackets {} around it if it is inactive. The Move controller does not have the FKControl menu item.

Dynamics Edit Mode

By LMB dragging on a controller, you can alter various dynamics related settings. It is represented by a filled orange circle which thickens and thins as you alter the value dragging left and right. The actual name of the setting you're altering is above the centre of the controller, and the value of the setting is below the controller. The Key Mode controls which items are affected as you drag, and the affected items display their value too while you drag. Left-clicking on another controller selects that controller. By right-clicking on the controller you get the following options.

  • Weight - Alters the weight of the particular item.
  • Resistance - Alters the air resistance of the item as it swings through the air.
  • Spring - This tries to pull the item back to its rest position relative to its parent. Very large values such as 10,000 are needed to make this alter the item's motion much.
  • Viscosity - Controls the impact of a collision. A controller with a higher Viscosity value tends to keep its shape more. If a controller bounces, a higher Viscosity value will have less bounce motion because the Viscosity absorbs the bouncing force.
  • Size - Collision in IKB is performed by placing a collision sphere around the pivot of the item. This value controls the radius of that sphere.
  • On/Off - Turns dynamics on or off for this item. It's a good idea to set Key Mode to All items, and then turn off dynamics for all items in the hierarchy before turning individual items back on in the other Key modes, so you have more control over which items are dynamic.
  • End edit - Exits Dynamics edit mode.

Controller Edit Mode

By dragging on a controller you can alter its position permanently, so it is more easily accessible. A line will link it to the item it is the controller for. You might want to drag the hand controllers out away from the fingers for example. Left-clicking on another controller selects that controller for editing. Right-clicking brings up the following menu.

  • Reset - Resets the controller position to the pivot point of the item.
  • Float - With this on, the controller stays in the same position relative to the window, no matter where you move the view from. When the item is deselected, the name of the item is displayed instead of the controller, with a line linking it to the item it is the controller for.
  • Size Mode - This controls how big the controller is when selected. It is one of 1(small), 2(medium), 3(big), Not Change (The selected controller size will be based on Controller Size. The selected and unselected controller size will be the same.)
  • End edit - Leaves Controller edit mode.

The Constraint Menu

Image:IKBConstraintMenu.jpg

If you right click on one of the numbers next to a controller, this brings up the constraint menu. This items on it are as follows:

  • (lock)/unlock - This will lock the channel, preventing it from changing. For a Rotate Controller, this is the same as being in the standard Rotate Tool and clicking the H/P/B in the numeric panel to turn those channels off. IKB gives a visual indication that a channel is locked by putting brackets around that channel's number. Similarly for a Move Controller.
  • <set>/unset limit - This turns on and off limits for that channel. For a Rotate Controller, this is the same as opening the Motion Options for the item and turning on it's limits. Again, IKB gives a visual indication that limits are on by placing angle brackets around the channel. Note though, you can also set limits for movement on a Move Controller, so an item might only be able to move between 0 and 1 m in the x-axis for example.
  • edit limit - This brings up a panel to allow you to set the rotate/move limits for the item, either in degrees for Rotate Controllers, or metres for Move Controllers. You can do the same for rotation limits by opening the Motion Options Panel and going to the Channel Controllers tab, but IKB offers the only way to set movement limits for items. You can also edit limits by holding control and dragging left and right on a channel value. The maximum and minimum values reached by the controller while control is held down determine the maximum and minimum limits for that channel.
  • reset limit - resets the channel limits to default values (-180 and 180 for rotation)
  • add link - By selecting a source item, and then selecting a target item, and then clicking this, will set up a Booster Link between the source and target items.
  • Graph edit - Opens the Graph Editor with this channel in it.

The IKB Bar

When the IKB tool is active, above the Dope Track/Timeline resides the IKB Bar. On the left of the IKB bar is the Key Mode which can be cycled through by LMB clicking on it or selected from a menu by RMB-clicking on it. On the left is the IKB Menu which can be accessed by LMB or RMB clicking on it.

The IKB Menu

Image:IKBMenu.jpg

This menu consists of the following:

  • bone dynamics - Toggles dynamics for bones. Brackets around this indicates it is not active. Only those bones which have Dynamics set on them will be affected.
  • Global fxIK - IK Booster provides a global IK on/off switch. When this option is active all hierarchies in the object will be solved with IK. When this option is not active only the current hierarchy will be solved with IK.
  • IK Bind - This turns part of the IKB Goal behaviour on or off. If it's on, a Goal item will follow after its IK chain if you pull the item with its IKB Goal set. If it's off, the Goal will stay where it is.
  • Auto Bind - If an item has a Bake Spot set, this will automatically create keys for the root object within that bakespot so the item can stay stationary, 'pinning' it in place. Note, these keys are temporary keys, in that if you select your root object, and drag it around within the bakespot, the temp keys will be updated to interpolate the new 'main' keys, still keeping the bakespot item in place.This is true even upon reloading the scene.
  • Auto Apply - Will smooth out adjustments you make to items within bakespots. For example, if you adjust the root item after Binding a bakespot, then all the keyframes of the root item within the bakespot will be interpolated to smooth out the motion of the root.
  • Commands - Consisting of:
    • Reset Rotation - Resets the hierarchy (dependent on the Key mode) to its base pose.
    • Re-BakeSpot-all - Any Bake Spot in the scene will be re-baked when this command is selected. Note: Any Bake Spot that was not previously baked will not be affected.
    • Re-BindMotion-All - All Bind Spots will be recalculated.
    • Set RIG as Comments - Saves comments in the lws which detail IKB's settings. In this way you can remove IKB from your rig, save and load the scene as many times as you want and
    • Get RIG as Comments - Once you have added IK booster in the Object Properties> Custom Object plugin list, you can use this to retrieve the old settings such as controller positions, which joints are FK etc.
    • Clear RIG Comments - Removes these IKB comments from the scene file.
  • Motions - Consisting of:
    • Motion Copy - this will make a backup copy of the animation of the entire hierarchy.
    • Motion Rollback - this abandons any changes and restores the copy made above.
    • Motion Save - this saves the entire hierarchy's animation.
    • Motion Load - this loads the saved animation, and can be used on other hierarchies with the same setup (note: items do not have to have the same names, just have the same hierarchical form)
  • Options - Brings up the IKB Options.
    • FxIK size - Determines the accuracy of IK solving for IKB. Higher values are less accurate, but faster.
    • Group - The Dynamics Group which dynamic bones belong to.
    • Gravity(m/s^2) - The Acceleration due to gravity dynamics bones are affected by. Earth gravity is -9.81.
    • Fix by collision - Will stop any bones hit by a collision object.
    • Controller Size - Determines how big the Controllers are displayed on screen.
    • Size Mode - Scales all the Controllers to Small, Medium or Large.
    • Ghost Mode - Turns on a kind of onion skinning for either all items or just the current item in the hierarchy.
    • Ghost Size - Allows you to set how many frames forwards and backwards the onion skinning displays.

Bone Dynamics

Items can have their own linked dynamics in IKB, not just bones, despite the name. It's a simple way of having a hierarchy having collision, sway, lag and other effects linked between items, like chains might, or whips. If you have limits set up correctly, it can also be a way of creating 'rag-doll' physics on a character.

You set the values used by Bone dynamics in the Dynamics Edit Mode.

Once you've set up the values as you want them, press Setup>IK>IKB Calculate to start the calculation. If you're not happy with the results, press Undo to unbake the keys which IKB makes as part of the calculation, adjust the settings, and re-calculate.

Views
Personal tools