Adverti horiz upsell

Key Assistant 1.2.0 for Maya (maya script)

This script will help you to manage animation keys and controllers faster!

License
Button download
311 Downloads

Compatibility

  • 2016, 2015, 2014

Operating Systems

  • Windows

History

Created:09/12/2015
Last Modified:10/27/2017
File Size: 7.88 KB

Keywords

animation, maya

This script will help you to manage animation keys faster with help of several tools:

Key Manager

It can:

— Delete every N-key(s).
That means that after deleting 2 keys initial keyframes like:
X X X X X X X
will be:
X – – X – – X

— Insert every N-key(s).
That means that after insertig 2 keys initial keyframes like:
X – – – – – –
will be:
X – X – X – X
Note that script just inserts keys without changing controllers values.

— Space exery N-key(s).
That means that after spacing 2 keys initial keyframes like:
X X X X X X X
will be:
X – X – X – X

 

Pos. copier
 

It can:

— Copy controller position from prev keyframe to the current one. Hit ‘>’ button from the left side.
— Copy controller position from prev keyframe to the current one. Hit ‘<' button from the right side.
— Copy controller position from current keyframe to the previous one. Hit '<' button from the left side.
— Copy controller position from current keyframe to the next one. Hit '>‘ button from the right side.

— For all buttons: With ‘alt’ pressed it will copy position with one-keyframe step. With time range highlighted it will copy the position with one-keyframe step within this range.


Pick walker
 

It can:

— Assign controller (group of controllers) to another controller (group of controllers) for the controller picking in any assigned direction.
— Highligh assigned controllers
— Work with (or without) namespaces
— Delete or re-assign picking connections
— Work with hotkeys

In order to assign hotkeys copy this parts of the code and insert them into the Hotkey editor.


Up button:

1
2
import KeyAssist
KeyAssist.PUpBHK()


Down button:

1
2
import KeyAssist
KeyAssist.PDnBHK()


Left button:

1
2
import KeyAssist
KeyAssist.PLtBHK()


Right button:

1
2
import KeyAssist
KeyAssist.PRtBHK()

 

Installation:

Copy this file in your maya scripts folder (for example – C:\Users\ ***Username*** \Documents\maya\2016-x64\scripts)

Copy one of desired icons (_a – postfix means that icon with transparent background) in your icon folder (for example – C:\Users\ ***Username*** \Documents\maya\2016-x64\prefs\icons)

Open Maya, open the script editor and in a python tab paste two lines below :

1
2
import KeyAssist
KeyAssist.start()


Select this line and with middle mouse click drag it to your shelf. Then assign the icon provided in the zip-archve to the script via the shelf editor.

 

Additional scripts for the 'Pickwalk' section.

Download AutoHotkey script for Pickwalker from my personal web-site - www.fabis.xyz

The text below represents the code that contains AutoHotkey script, you can replace existing hotkeys with the desired ones:


#IfWinActive Autodesk Maya ahk_class QWidget

F1::
Suspend
return

WheelUp::
send, +i
return

WheelDown::
send, +k
return

~LShift & WheelUp::
send, +l
return

~LShift & WheelDown::
send, +o
return


Copy the code below to the notepad and save it as 'ShowHideControllers.py' of download in from my personal web-site www.fabis.xyz

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import maya.cmds as cmds
def tabB(hkpressed):
	if( hkpressed == 1 ):
		pann = cmds.getPanel( wf=1 )
		if "modelPanel" in pann:
			cmds.modelEditor( pann, e=1, nc=1 )
			cmds.modelEditor( pann, e=1, ikHandles=1 )
			cmds.modelEditor( pann, e=1, xray=1 )
			if(cmds.ls(type='HIKCharacterNode')):
				cmds.modelEditor( pann, e=1, joints=1 )
		global oldObjL
		oldObjL = []
		visO = cmds.ls( tr=1, o=1, v=1 )
		for v in visO:
			shObj = cmds.listRelatives( v, s=1 )
			exType = cmds.ls( shObj, st=1 )
			if( exType ):
				if (cmds.getAttr( v+".overrideEnabled", se=1 ) == 1 and exType[1]=='mesh' ):
					cmds.setAttr( v+".overrideEnabled", 1 )
					cmds.setAttr( v+".overrideDisplayType", 2 )
					oldObjL.append(v)
 
	elif( hkpressed == 0 ):
		global oldObjL
		pann = cmds.getPanel( wf=1 )
		if "modelPanel" in pann:
			cmds.modelEditor( pann, e=1, nc=0 )
			cmds.modelEditor( pann, e=1, ikHandles=0 )
			cmds.modelEditor( pann, e=1, xray=0 )
			if(cmds.ls(type='HIKCharacterNode')):
				cmds.modelEditor( pann, e=1, joints=0 )
		for o in oldObjL:
			cmds.setAttr( o+".overrideEnabled", 0 )
			cmds.setAttr( o+".overrideDisplayType", 0 )
 

In order to reveal controllers use the code:

import ShowHideControllers

ShowHideControllers.tabB(1)

In order to hide controllers use the code:

import ShowHideControllers

ShowHideControllers.tabB(0)





History:

Version 1.2:

— Fixed bug with the 'delete' function.

Version 1.1:

— Significant performance improvement of the 'Key manager' section (delete, insert, space).
— Undo for the 'insert' function is much more faster with the big amount of animated controllers.
— Fixed bug with the 'delete' function: collapsing the objects with the single key.



Happy animating! 



Please use the Bug System to report any bugs.
Please use the Feature Requests to give me ideas.
Please use the Support Forum if you have any questions or problems.
Please rate and review in the Review section.

More Items from author Aleksandr Smirnov:


People who favorited this item:

  • Leo Animator
    Leo Animator
  • José Diaz
    José Diaz
  • infixxx
    infixxx
  • Eduardo Flores
    Eduardo Flores
  • lanzvata
    lanzvata
  • Latiwings
    Latiwings
  • Kodeki
    Kodeki
  • maniakid
    maniakid