Are you over 18 and want to see adult content?
More Annotations
Home | Mkkoi Koi & vijverspecialist Arendonk
Are you over 18 and want to see adult content?
C&C Travel | Rejser til Thailand, Filippinerne og Sri Lanka med flere!
Are you over 18 and want to see adult content?
FastNext: Reseller Hosting, Cheap Web Hosting, Reliable VPS/VDS Hosting
Are you over 18 and want to see adult content?
Офисные кресла и запчасти. Ремонт офисных кресел.
Are you over 18 and want to see adult content?
GroupSender – Só mais um site WordPress
Are you over 18 and want to see adult content?
فروشگاه اینترنتی واوک | معرفی، بررسی و فروش آنلاین کتاب
Are you over 18 and want to see adult content?
Favourite Annotations
A complete backup of voetbalsensatie.nl
Are you over 18 and want to see adult content?
A complete backup of krtgradbenistvo.si
Are you over 18 and want to see adult content?
A complete backup of piuminiduveticaoutlet.it
Are you over 18 and want to see adult content?
A complete backup of salomonshoes-outlet.com
Are you over 18 and want to see adult content?
A complete backup of parcbagatelle.com
Are you over 18 and want to see adult content?
Text
WHAT'S NEW?
If you don't, ignore this. Download this file and put it it in your scripts folder. Open maya. In a python command line: import cgmUpdate then cgmUpdate.here (). When you do this, you'll get a confirm dialog showing you where it's detected the install location. You can change if you like.See image above. CGMONKS » BLOG ARCHIVE » CG MONASTERY CG Monastery. We’ve moved most of our work to the CG Monastery. Sorry for not pointing to there sooner. Been busy. « ‘LBS’ Proxy Alpha 1! This entry was posted on Sunday, February 23rd, 2020 at 11:18.pm and is filed under Announcements . You can WELCOME TO CGMTOOLBOX USER GUIDE! Welcome to cgmToolbox User Guide!¶ The cgmToolbox is a collection of tools we write, share, and use to do our work. Because we don't charge for the toolbox, others allow us to share their work as well. LOCINATOR — CGMTOOLS 2.0.022018 DOCUMENTATION cgmLocinator is a tool for matching objects to locators or other objects as well as creating update-able locators in a myriad of ways. In early 2017, we undertook a rewrite of cgmLocinator as a part of our new marking menu push and core rewrite. New locator types and a conversion from a traditional ui to a marking menu are a part of thispush.
UPDATE TOOL
Buttons¶. Check for updates - This will only work if you have a last update option var stored which you can tell if you have any information in the top row. If you are not up to date, it will ask you if you want to update and give a little info. Get Selected - Based on your selected commit in the list above and the branch specified.MARKING MENU
General Concepts¶. Where the menu works - Any standard panel will let the marking menu bind to it - any 3d view, graph editor, outliner etc. If you try it over a tool settings window for example, it won't work. RayCasting - Used to cast a ray from the mouse cursor through the geometry in the scene to return various information such as position and normal of the geometry that was hit. SNAP — CGMTOOLS 2.0.022018 DOCUMENTATION sp - Move the scalePivot. rp - Move the rotatePivot. Finally, do something with the data. Snap - Actually do the snapping. Seq - Perform snapping in a sequence of one to the next in reverse order to account for dependencies. For example obj1,obj2,obj3 will be done as obj2>obj3 then obj1>obj2. Query - Query mode. CGMONKSABOUTTOOLSCONTACTCGM.CORECGMNODECGMOPTIONVAR Problem: Storing a shape (not a transform) as a messaged connection.. Quick addendum to last week’s post.Ran into this on some rayCasting stuff (needed specific shape connection for updatable loc via stored uv data in dicts – more on that soon). CGMONKS » LOCINATOR 2.0SEE MORE ON CGMONKS.COM TOOLBOX — CGMTOOLS 2.0.022018 DOCUMENTATION Toolbox¶. Status: Alpha release - August 2017. Last Updated: 09.05.2017. The cgmToolbox is a collection of many tools that may be accessed in a several ways:WHAT'S NEW?
If you don't, ignore this. Download this file and put it it in your scripts folder. Open maya. In a python command line: import cgmUpdate then cgmUpdate.here (). When you do this, you'll get a confirm dialog showing you where it's detected the install location. You can change if you like.See image above. CGMONKS » BLOG ARCHIVE » CG MONASTERY CG Monastery. We’ve moved most of our work to the CG Monastery. Sorry for not pointing to there sooner. Been busy. « ‘LBS’ Proxy Alpha 1! This entry was posted on Sunday, February 23rd, 2020 at 11:18.pm and is filed under Announcements . You can WELCOME TO CGMTOOLBOX USER GUIDE! Welcome to cgmToolbox User Guide!¶ The cgmToolbox is a collection of tools we write, share, and use to do our work. Because we don't charge for the toolbox, others allow us to share their work as well. LOCINATOR — CGMTOOLS 2.0.022018 DOCUMENTATION cgmLocinator is a tool for matching objects to locators or other objects as well as creating update-able locators in a myriad of ways. In early 2017, we undertook a rewrite of cgmLocinator as a part of our new marking menu push and core rewrite. New locator types and a conversion from a traditional ui to a marking menu are a part of thispush.
UPDATE TOOL
Buttons¶. Check for updates - This will only work if you have a last update option var stored which you can tell if you have any information in the top row. If you are not up to date, it will ask you if you want to update and give a little info. Get Selected - Based on your selected commit in the list above and the branch specified.MARKING MENU
General Concepts¶. Where the menu works - Any standard panel will let the marking menu bind to it - any 3d view, graph editor, outliner etc. If you try it over a tool settings window for example, it won't work. RayCasting - Used to cast a ray from the mouse cursor through the geometry in the scene to return various information such as position and normal of the geometry that was hit. SNAP — CGMTOOLS 2.0.022018 DOCUMENTATION sp - Move the scalePivot. rp - Move the rotatePivot. Finally, do something with the data. Snap - Actually do the snapping. Seq - Perform snapping in a sequence of one to the next in reverse order to account for dependencies. For example obj1,obj2,obj3 will be done as obj2>obj3 then obj1>obj2. Query - Query mode. CGMONKS » ATTRTOOLS Make locked/unlocked. Delete. Connect/Copy/Transfer – works from selected attributes in the editor. Connect to function. Copy attributes to selected objects with a good bit of options: Convert – converts attribute type if necessary. Value – copy values. In – copy incoming connections. Out –CGMONKS » CGM.CORE
cgm.core. cgm.core is the new rewrite of the ‘core’ of the CG Monks toolkit. We are very excited to be working with Mark Jackson (Red9 – his tool kit is kept up to date in our collection) and are using his MetaClass setup as a base of much of what we’re doing. CGMONKS » LOCINATOR Locinator. Locinator is a maya tool for dealing with locators and tracking objects to locators. It serves a few main functions: Creates locators based off of selection types. Those created on objects with transforms also match the rotation order of their respective sources. Stores info (via attribute) on what they were created from so thatthey
MARKING MENU
General Concepts¶. Where the menu works - Any standard panel will let the marking menu bind to it - any 3d view, graph editor, outliner etc. If you try it over a tool settings window for example, it won't work. RayCasting - Used to cast a ray from the mouse cursor through the geometry in the scene to return various information such as position and normal of the geometry that was hit. MESH TOOLS — CGMTOOLS 2.0.022018 DOCUMENTATION Object Cast¶. This is a two part section. Most of the options in the slice section affect the wrap section as well. The general theory is that rays are cast from a given object in order to create curves. ATTR TOOLS — CGMTOOLS 2.0.022018 DOCUMENTATION Values¶. For value pushing. What values will be pushed in selection and key context. primeAttr - The current values of the first attribute in your ui selection will be pushed; primeAttrPer - For each key, the primeAttr's value at that time will be pushed to the others; primeNode - The current values of all selected attributes in the ui will bepushed
JOINT TOOLS
Joint creation is based on selection. There are several main methods. When we resplit, it can be by the selection generated curve or an existing one. From Selected - Create new joints based on selection. Can be transforms or components. Mid - Create a joint at the mid pointof the selected.
SET TOOLS — CGMTOOLS 2.0.022018 DOCUMENTATION Overview¶. cgmSetTools is a tool for working with selection sets in maya. The 2.0 rewrite was completed in September 2017. What can I do with it? Filter certain types of selection sets to work with MRSANIMATE — CGMTOOLS 2.0.022018 DOCUMENTATION Terminology¶. Proxy Rig - Rig without a final mesh for fast prototype work. Puppet - Our name for the root node that is has the wiring to the rest of the components nodes and features of a character or asset.. Module/Part - The module unit of a puppet. Be it a hand, arm, leg or whatever. ControlTypesDYNAMIC PARENT TOOL
Dynamic Parent (dynParent) - A specified parent for a dynChild stored to a dynParentGroup to switch between. Mode (dynMode) - The mode the dynParentGroup is in. Currently supports: 0 - space - Most typically used option, target follows the space of the target. 1 - orient - CGMONKSABOUTTOOLSCONTACTCGM.CORECGMNODECGMOPTIONVAR Problem: Storing a shape (not a transform) as a messaged connection.. Quick addendum to last week’s post.Ran into this on some rayCasting stuff (needed specific shape connection for updatable loc via stored uv data in dicts – more on that soon). CGMONKS » LOCINATOR 2.0SEE MORE ON CGMONKS.COM TOOLBOX — CGMTOOLS 2.0.022018 DOCUMENTATION Toolbox¶. Status: Alpha release - August 2017. Last Updated: 09.05.2017. The cgmToolbox is a collection of many tools that may be accessed in a several ways:WHAT'S NEW?
If you don't, ignore this. Download this file and put it it in your scripts folder. Open maya. In a python command line: import cgmUpdate then cgmUpdate.here (). When you do this, you'll get a confirm dialog showing you where it's detected the install location. You can change if you like.See image above. CGMONKS » BLOG ARCHIVE » CG MONASTERY CG Monastery. We’ve moved most of our work to the CG Monastery. Sorry for not pointing to there sooner. Been busy. « ‘LBS’ Proxy Alpha 1! This entry was posted on Sunday, February 23rd, 2020 at 11:18.pm and is filed under Announcements . You can WELCOME TO CGMTOOLBOX USER GUIDE! Welcome to cgmToolbox User Guide!¶ The cgmToolbox is a collection of tools we write, share, and use to do our work. Because we don't charge for the toolbox, others allow us to share their work as well. LOCINATOR — CGMTOOLS 2.0.022018 DOCUMENTATION cgmLocinator is a tool for matching objects to locators or other objects as well as creating update-able locators in a myriad of ways. In early 2017, we undertook a rewrite of cgmLocinator as a part of our new marking menu push and core rewrite. New locator types and a conversion from a traditional ui to a marking menu are a part of thispush.
UPDATE TOOL
Buttons¶. Check for updates - This will only work if you have a last update option var stored which you can tell if you have any information in the top row. If you are not up to date, it will ask you if you want to update and give a little info. Get Selected - Based on your selected commit in the list above and the branch specified.MARKING MENU
General Concepts¶. Where the menu works - Any standard panel will let the marking menu bind to it - any 3d view, graph editor, outliner etc. If you try it over a tool settings window for example, it won't work. RayCasting - Used to cast a ray from the mouse cursor through the geometry in the scene to return various information such as position and normal of the geometry that was hit. SNAP — CGMTOOLS 2.0.022018 DOCUMENTATION sp - Move the scalePivot. rp - Move the rotatePivot. Finally, do something with the data. Snap - Actually do the snapping. Seq - Perform snapping in a sequence of one to the next in reverse order to account for dependencies. For example obj1,obj2,obj3 will be done as obj2>obj3 then obj1>obj2. Query - Query mode. CGMONKSABOUTTOOLSCONTACTCGM.CORECGMNODECGMOPTIONVAR Problem: Storing a shape (not a transform) as a messaged connection.. Quick addendum to last week’s post.Ran into this on some rayCasting stuff (needed specific shape connection for updatable loc via stored uv data in dicts – more on that soon). CGMONKS » LOCINATOR 2.0SEE MORE ON CGMONKS.COM TOOLBOX — CGMTOOLS 2.0.022018 DOCUMENTATION Toolbox¶. Status: Alpha release - August 2017. Last Updated: 09.05.2017. The cgmToolbox is a collection of many tools that may be accessed in a several ways:WHAT'S NEW?
If you don't, ignore this. Download this file and put it it in your scripts folder. Open maya. In a python command line: import cgmUpdate then cgmUpdate.here (). When you do this, you'll get a confirm dialog showing you where it's detected the install location. You can change if you like.See image above. CGMONKS » BLOG ARCHIVE » CG MONASTERY CG Monastery. We’ve moved most of our work to the CG Monastery. Sorry for not pointing to there sooner. Been busy. « ‘LBS’ Proxy Alpha 1! This entry was posted on Sunday, February 23rd, 2020 at 11:18.pm and is filed under Announcements . You can WELCOME TO CGMTOOLBOX USER GUIDE! Welcome to cgmToolbox User Guide!¶ The cgmToolbox is a collection of tools we write, share, and use to do our work. Because we don't charge for the toolbox, others allow us to share their work as well. LOCINATOR — CGMTOOLS 2.0.022018 DOCUMENTATION cgmLocinator is a tool for matching objects to locators or other objects as well as creating update-able locators in a myriad of ways. In early 2017, we undertook a rewrite of cgmLocinator as a part of our new marking menu push and core rewrite. New locator types and a conversion from a traditional ui to a marking menu are a part of thispush.
UPDATE TOOL
Buttons¶. Check for updates - This will only work if you have a last update option var stored which you can tell if you have any information in the top row. If you are not up to date, it will ask you if you want to update and give a little info. Get Selected - Based on your selected commit in the list above and the branch specified.MARKING MENU
General Concepts¶. Where the menu works - Any standard panel will let the marking menu bind to it - any 3d view, graph editor, outliner etc. If you try it over a tool settings window for example, it won't work. RayCasting - Used to cast a ray from the mouse cursor through the geometry in the scene to return various information such as position and normal of the geometry that was hit. SNAP — CGMTOOLS 2.0.022018 DOCUMENTATION sp - Move the scalePivot. rp - Move the rotatePivot. Finally, do something with the data. Snap - Actually do the snapping. Seq - Perform snapping in a sequence of one to the next in reverse order to account for dependencies. For example obj1,obj2,obj3 will be done as obj2>obj3 then obj1>obj2. Query - Query mode. CGMONKS » ATTRTOOLS Make locked/unlocked. Delete. Connect/Copy/Transfer – works from selected attributes in the editor. Connect to function. Copy attributes to selected objects with a good bit of options: Convert – converts attribute type if necessary. Value – copy values. In – copy incoming connections. Out –CGMONKS » CGM.CORE
cgm.core. cgm.core is the new rewrite of the ‘core’ of the CG Monks toolkit. We are very excited to be working with Mark Jackson (Red9 – his tool kit is kept up to date in our collection) and are using his MetaClass setup as a base of much of what we’re doing. CGMONKS » LOCINATOR Locinator. Locinator is a maya tool for dealing with locators and tracking objects to locators. It serves a few main functions: Creates locators based off of selection types. Those created on objects with transforms also match the rotation order of their respective sources. Stores info (via attribute) on what they were created from so thatthey
MARKING MENU
General Concepts¶. Where the menu works - Any standard panel will let the marking menu bind to it - any 3d view, graph editor, outliner etc. If you try it over a tool settings window for example, it won't work. RayCasting - Used to cast a ray from the mouse cursor through the geometry in the scene to return various information such as position and normal of the geometry that was hit. MESH TOOLS — CGMTOOLS 2.0.022018 DOCUMENTATION Object Cast¶. This is a two part section. Most of the options in the slice section affect the wrap section as well. The general theory is that rays are cast from a given object in order to create curves. ATTR TOOLS — CGMTOOLS 2.0.022018 DOCUMENTATION Values¶. For value pushing. What values will be pushed in selection and key context. primeAttr - The current values of the first attribute in your ui selection will be pushed; primeAttrPer - For each key, the primeAttr's value at that time will be pushed to the others; primeNode - The current values of all selected attributes in the ui will bepushed
JOINT TOOLS
Joint creation is based on selection. There are several main methods. When we resplit, it can be by the selection generated curve or an existing one. From Selected - Create new joints based on selection. Can be transforms or components. Mid - Create a joint at the mid pointof the selected.
SET TOOLS — CGMTOOLS 2.0.022018 DOCUMENTATION Overview¶. cgmSetTools is a tool for working with selection sets in maya. The 2.0 rewrite was completed in September 2017. What can I do with it? Filter certain types of selection sets to work with MRSANIMATE — CGMTOOLS 2.0.022018 DOCUMENTATION Terminology¶. Proxy Rig - Rig without a final mesh for fast prototype work. Puppet - Our name for the root node that is has the wiring to the rest of the components nodes and features of a character or asset.. Module/Part - The module unit of a puppet. Be it a hand, arm, leg or whatever. ControlTypesDYNAMIC PARENT TOOL
Dynamic Parent (dynParent) - A specified parent for a dynChild stored to a dynParentGroup to switch between. Mode (dynMode) - The mode the dynParentGroup is in. Currently supports: 0 - space - Most typically used option, target follows the space of the target. 1 - orient - CGMONKSABOUTTOOLSCONTACTCGM.CORECGMNODECGMOPTIONVAR Problem: Storing a shape (not a transform) as a messaged connection.. Quick addendum to last week’s post.Ran into this on some rayCasting stuff (needed specific shape connection for updatable loc via stored uv data in dicts – more on that soon). TOOLBOX — CGMTOOLS 2.0.022018 DOCUMENTATION Toolbox¶. Status: Alpha release - August 2017. Last Updated: 09.05.2017. The cgmToolbox is a collection of many tools that may be accessed in a several ways: CGMONKS » LOCINATOR 2.0SEE MORE ON CGMONKS.COMWHAT'S NEW?
New Calls¶. cgmGEN.func_getTraceString - given a function, get a string trace to its module for reporting like cgm.core.cgmGeneral.func_getTraceString; cgmGEN.func_snapShot - usage should be cgmGEN.func_snapShot(vars()) in your function. Will give you a report of the values at that point in the call process; cgmGEN.cgmExceptCB - Our new exception handler with nested exceptionhandling
CGMONKS » BLOG ARCHIVE » CG MONASTERY This entry was posted on Sunday, February 23rd, 2020 at 11:18.pm and is filed under Announcements.You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currentlyclosed.
WELCOME TO CGMTOOLBOX USER GUIDE! Welcome to cgmToolbox User Guide!¶ The cgmToolbox is a collection of tools we write, share, and use to do our work. Because we don't charge for the toolbox, others allow us to share their work as well. LOCINATOR — CGMTOOLS 2.0.022018 DOCUMENTATION Create¶. The create tab looks like this: Loc Me - Creates a fromObj per object selected. Supports most components. Mid Point - Creates midPoint loc based on selection; AttachPoint - Creates an attach point via rayCast follicle and a fromObj loc to go with it.; Closest Point - Creates closestPoint loc with the first object in selection being the source.; Closest Target - Creates closestTargetMARKING MENU
General Concepts¶. Where the menu works - Any standard panel will let the marking menu bind to it - any 3d view, graph editor, outliner etc. If you try it over a tool settings window for example, it won't work. RayCasting - Used to cast a ray from the mouse cursor through the geometry in the scene to return various information such as position and normal of the geometry that was hit.UPDATE TOOL
To remember¶The check for updates function only works after you've pulled a branch commit *.When you pull a branch commit, an option variable is set which stores that to maya when the check for updates section checks the next time you call it to compare to the latestcommit in
SNAP — CGMTOOLS 2.0.022018 DOCUMENTATION Pivots¶. In general, positional snapping works by rotatePivot(rp) as that is the main pivot an animator uses in maya. A pivot is a point inspace.
CGMONKSABOUTTOOLSCONTACTCGM.CORECGMNODECGMOPTIONVAR Problem: Storing a shape (not a transform) as a messaged connection.. Quick addendum to last week’s post.Ran into this on some rayCasting stuff (needed specific shape connection for updatable loc via stored uv data in dicts – more on that soon). TOOLBOX — CGMTOOLS 2.0.022018 DOCUMENTATION Toolbox¶. Status: Alpha release - August 2017. Last Updated: 09.05.2017. The cgmToolbox is a collection of many tools that may be accessed in a several ways: CGMONKS » LOCINATOR 2.0SEE MORE ON CGMONKS.COMWHAT'S NEW?
New Calls¶. cgmGEN.func_getTraceString - given a function, get a string trace to its module for reporting like cgm.core.cgmGeneral.func_getTraceString; cgmGEN.func_snapShot - usage should be cgmGEN.func_snapShot(vars()) in your function. Will give you a report of the values at that point in the call process; cgmGEN.cgmExceptCB - Our new exception handler with nested exceptionhandling
CGMONKS » BLOG ARCHIVE » CG MONASTERY This entry was posted on Sunday, February 23rd, 2020 at 11:18.pm and is filed under Announcements.You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currentlyclosed.
WELCOME TO CGMTOOLBOX USER GUIDE! Welcome to cgmToolbox User Guide!¶ The cgmToolbox is a collection of tools we write, share, and use to do our work. Because we don't charge for the toolbox, others allow us to share their work as well. LOCINATOR — CGMTOOLS 2.0.022018 DOCUMENTATION Create¶. The create tab looks like this: Loc Me - Creates a fromObj per object selected. Supports most components. Mid Point - Creates midPoint loc based on selection; AttachPoint - Creates an attach point via rayCast follicle and a fromObj loc to go with it.; Closest Point - Creates closestPoint loc with the first object in selection being the source.; Closest Target - Creates closestTargetMARKING MENU
General Concepts¶. Where the menu works - Any standard panel will let the marking menu bind to it - any 3d view, graph editor, outliner etc. If you try it over a tool settings window for example, it won't work. RayCasting - Used to cast a ray from the mouse cursor through the geometry in the scene to return various information such as position and normal of the geometry that was hit.UPDATE TOOL
To remember¶The check for updates function only works after you've pulled a branch commit *.When you pull a branch commit, an option variable is set which stores that to maya when the check for updates section checks the next time you call it to compare to the latestcommit in
SNAP — CGMTOOLS 2.0.022018 DOCUMENTATION Pivots¶. In general, positional snapping works by rotatePivot(rp) as that is the main pivot an animator uses in maya. A pivot is a point inspace.
CGMONKS » CGM.CORE
cgm.core. cgm.core is the new rewrite of the ‘core’ of the CG Monks toolkit. We are very excited to be working with Mark Jackson (Red9 – his tool kit is kept up to date in our collection) and are using his MetaClass setup as a base of much of what we’re doing. CGMONKS » ATTRTOOLS Our attempt at making attributes in maya a simpler process to deal with. Features:. Multi attribute adding and editing; Individual attribute setting control CGMONKS » LOCINATOR I have a character who’s hand I want to track some object. For whatever reason I can’t setup a dynamic parent constraint on it. So I loc that hand, constrain that loc to the object and then I can force track that hand to the object over whatever framesMARKING MENU
General Concepts¶. Where the menu works - Any standard panel will let the marking menu bind to it - any 3d view, graph editor, outliner etc. If you try it over a tool settings window for example, it won't work. RayCasting - Used to cast a ray from the mouse cursor through the geometry in the scene to return various information such as position and normal of the geometry that was hit. MESH TOOLS — CGMTOOLS 2.0.022018 DOCUMENTATION Object Cast¶. This is a two part section. Most of the options in the slice section affect the wrap section as well. The general theory is that rays are cast from a given object in order to create curves. ATTR TOOLS — CGMTOOLS 2.0.022018 DOCUMENTATION Values¶. For value pushing. What values will be pushed in selection and key context. primeAttr - The current values of the first attribute in your ui selection will be pushed; primeAttrPer - For each key, the primeAttr's value at that time will be pushed to the others; primeNode - The current values of all selected attributes in the ui will bepushed
MRSANIMATE — CGMTOOLS 2.0.022018 DOCUMENTATION Terminology¶. Proxy Rig - Rig without a final mesh for fast prototype work. Puppet - Our name for the root node that is has the wiring to the rest of the components nodes and features of a character or asset.. Module/Part - The module unit of a puppet. Be it a hand, arm, leg or whatever. ControlTypes SET TOOLS — CGMTOOLS 2.0.022018 DOCUMENTATION Overview¶. cgmSetTools is a tool for working with selection sets in maya. The 2.0 rewrite was completed in September 2017. What can I do with it? Filter certain types of selection sets to work withJOINT TOOLS
Tweak¶. Full props to Michael Comet for the logic on this one in his fantastic cometJO. Change the current jointOrient values on selected joints by provided amounts in a relative manner.DYNAMIC PARENT TOOL
Terminology¶. Dynamic Parent Group (dynParentGroup) - A metaclassed group setup from a dynamic child for switching that child Dynamic Child (dynChild/target) - The controlled object that is able to keep clean animation channels while following other spaces Dynamic Parent (dynParent) - A specified parent for a dynChild stored to a dynParentGroup to switch between.* Home
* About
* Team
* Our “Rules”
* Tools
* cgm.core
* Contact
‘LBS’ PROXY ALPHA 1!Tue, Apr 10th, 2018
posted by jjburton 07:04 PM FIRST NEW RIG IN WAY TOO LONG. This release is about getting out our first proxy rig and new character for the community to use. As you’ll see, this first release is limited geo in what we’ll be calling a proxy rig. The final release version of this little guy will be more of what you’dsee here:
This rigging system is what the Morpheus 2 tech has turned into and we’re excited to push it forward. When it’s a bit further along we’ll be re-rigging Morpheus 2’s base asset with it and releasethat as well.
We’ll have more on our plans with the alpha 2 release hopefully in a few weeks. We have some gigs that we have to do as well and one of our partners welcomed his first son into the world last month and so he’s a little busy at present. FOR NOW, HERE’S ALPHA 1!{ Get it here. }
FEATURES
* First release using the new Morpheus Rig System (name subject tochange)
* Unity targeted rig – lower joint count and other considerations * Most major rig features in place * Space/follow setups with space pivots where sensible * Puppet and part object sets* Fk/IK
* Multi banking foot with direct controls * Direct joint controls * Framework for a ton of stuff for the next push * Twist segments and handles * Look at head setup* Proxy geo
* Proxy shapes for direct controls where possibleNEXT SPRINT
* UI
* Animator UI first pass * Refine Marking Menu * Builder refinement* Rig Features
* Grouping wiring
* FK/IK switching system * Scale enabled on rig where it makes sense * Squash Stretch in segments and rig* Builder
* Hand setup helper
* Better foot shape
read comments (0)
LOOKING BACK AT 2017…Mon, Dec 11th, 2017
posted by jjburton 03:12 PM It’s been a busy year though updates on the site don’t reflect that very well. Turns out we were targeted by some not nice folks that kept our site locked down a lot over the last year and generally wasted a lot of our web guru’s time. We think we have that ironed out so we should start posting things here again more for more detailed stuff than what is on Facebook.
We started out 2017 with a the goal being a year to get things done. Our goal to not over promise but to let our work stand for itself. As such here’s what we have to show for the year (all the external projects are under NDA).GETTING BACK TO IT
Josh has gotten back to taking gigs and has been working jobs since the summer and had a great time doing a facial rigging class with Rigging Dojo and plans to do more with them next year. David and Josh both have continued to work on tools and worked some jobs together.SPHINX!
We set up a Sphinx doc system and have been fleshing it out over the year as we’ve updated tools. We feel this is a great foundation on which to continue to build and provide better support for the large assortment of tools we are continuing to develop. http://docs.cgmonks.com/index.html NEW TOOLS AND BITS IN 2017 We started this year with a 2.0 rewrite of much of our core code base as well as updating some old tools and doing new ones. We’ve made a lot of progress on this front just this year. * TOOLBOX 2.0 – (http://docs.cgmonks.com/toolbox.html ) We redesigned the toolbox to be accessible by a top maya menu, marking menu and a ui. There are loads of functionality to be found and itcontinually updated
* LOCINATOR 2.0 – (http://docs.cgmonks.com/locinator.html ) Took a stab at updating this with new tech developed and expanding features. This is a great tool for animators that need to track different things for short periods of time without finicky constraint setups. It’s one of our more popular tools. * CGMSNAP 1.0 – (http://docs.cgmonks.com/snaptools.html ) We spent a lot of time working out snapping things around as we’ve been working on our rigger and for jobs in general. First attempt at trying to expose those calls in a more useful format. * CGMJOINTTOOLS 1.0 – (HTTP://DOCS.CGMONKS.COM/JOINTTOOLS.HTML ) HAVING BEEN HUGE FANS FOR COMET’S TOOL FOR YEARS. THERE WERE A FEW THINGS WE WANTED TO ADD FOR OUR OWN USE. SOME OF THOSE KEY FEATURES BEING CHAIN/CURVE SPLITTING, PLANAR ORIENTATION AND MORE. * TRANSFORM TOOLS 1.0 – (http://docs.cgmonks.com/toolbox.html#transform ) Built from an idea Bokser had to have values more easily set both absolutely andrelatively.
* SET TOOLS 2.0 – (http://docs.cgmonks.com/settools.html ) Rewrite of an old tool for working with object sets in maya to make managingthem easier.
* MARKING MENU 2.0 – (http://docs.cgmonks.com/markingmenu.html ) Taking the ideas from Morpheus 2.0’s marking menu work and expanding on that to a unified menu with different modes for rigging, animatingand more.
* CGMDYNPARENTTOOL 1.0 – (http://docs.cgmonks.com/dynparenttool.html ) This tool allows you to easily setup point,point/orient and orient dynamic groups for controls for rigs as well as providing the tools to switch modes on the fly when animating. We use this all the time for rigging work. * ATTRTOOLS 2.0 – (http://docs.cgmonks.com/attrtools.html ) Another stab at attribute work to make working with maya attributemore user friendly.
To get started – http://docs.cgmonks.com/quickstart.html#quick-start For the next post, we’ll let you know a bit more about what our plans are for 2018. Thanks !read comments (0)
STORING SHAPES AS MESSAGES (CONCEPT TESTING)Mon, Jan 23rd, 2017
posted by jjburton 09:01 PM PROBLEM: Storing a shape (not a transform) as a messaged connection. Quick addendum to last week’s post. Ran into
this on some rayCasting stuff (needed specific shape connection for updatable loc via stored uv data in dicts – more on that soon). My own googling and maya fiddling came up short with successfully connecting a shapes.message plug to a message attribute. It always connects to the transform. So, I pulled out my old method of attribute storing and it seems to be working okay. If I wanted to store shape3 to messageHolder on an attribute of testMessage. It would look like this. The connection works like this: shape3.viewName —-> messageHolder.testMessage. The logic plays out as follows in our needed functions:* Set message
* When it checks for attribute, component stuff from previous post, it now also checks for shape * Instead of a message attribute, I use my copy_to function to copy an unassuming attribute found on shapes (‘viewName’) which then creates a new attribute on my messageHolder matching type and all so it’s connectable. That call also wires that connection * Extra data is then stored as before* Get message
* It checks a passed message attribute name for type. If it’s a string, it checks the plug flag on list connections for our abovewiring
* Otherwise, it goes as before Still testing but seems to be working for our purposes. We’ll seehow it plays out.
read comments
(0)
STORING MESSAGE DATA WITH DICTS!Wed, Jan 18th, 2017
posted by jjburton 08:01 PM The problem: storing a dag node component in a way that makes it easily callable and persistent. As I’ve been both refactoring/optimizing our core libraries as well as updating locinator I came across this old issue. There are several ways of doing this, some better than others. Just been wrapping up rewrite of our attribute function library. A part of that was rolling out our msgList concept from cgmMeta to being outside meta as well as expanding on that with datList(more on that another day).SHORT VERSION
If you don’t care about the details and just wanna see code, grab the last master branch build of our tools and you can find the mainfunctions here:
* cgm.core.lib.attribute_utils.set_message/get_message * Walkthrough example of datList/msgList with new stuff — cgm.core.examples.help_datList_msgList.py * Note — There may be a lot of script editor activity on the example stuff as I have DEBUG on in the module currently.LONG VERSION
Let’s say we wanna store an object ‘null1’ to call and we’re storing on ‘storageNull’ How might we do that. * STRING ATTR – example: storageNull.stringAttr = null1 * This works as long as there is only one object named ‘null1’ and as long as ‘null1’ is never renamed. So in short, it worksrather poorly.
* MSGATTR – example storageNull.msgAttr >>connection>> null.msg * This works great and was my preferred method up to this point. The conundrum on locinator was that I had some locator types that were created from a component say ‘geo.vtx’ for example. My solution back in 2010ish when I wrote it was to just use a string for the whole thing and just hope there wasn’t a name conflict. So, how might we store this in a persistent manner. Having learned a few things since back in twenty ought ten I said self, we can can better than that now. The new implementation is as follows: * We take our data to be stored and split out our base node from any component or attribute. Namely we split the first ‘.’ out and validate the bits to know what we have * Store the main node as a standard message connection * Store the extra bits to a json dict via Red9’s json string implementation. We also allow for a a specified dataAttr (our extra data attr) and dataKey (for the dict) for specific storage So in this case our ‘geo.vtx’ is split to the following: * storageNull.msgAttr >>connection>> geo.msg * sorageNull.dataAttr = {msgAttr/dataKey:vtx} We do this as a dict and not a simple string attr per stored object because we use lots of these and having two attrs for every stored message seemed overkill. Once I’d worked out the component store, attribute storing was pretty simple. If we wanted to also add ‘geo2.tx’, it would be added as: * storageNull.msgAttr2 >>connection>> geo2.msg * sorageNull.dataAttr = {msgAttr2/dataKey2:vtx,msgAttr/dataKey:tx}
The dataKey comes in particular use with our datList/msgList setup which is our solution to multi message attrs being rubbish for maintaining ordered data. When the get_message call happens it first gets the msgAttr and then checks the default extra dat attr if none is specified. Whenever data is found it gets appended to the return. Yes, you can do some of this stuff with objectSets or other avenues and sometimes those work great. This is simply another way of storing data mainly for our rigging purposes. Still refining this but happy so far. Thus ends this post.read comments
(0)
2017 — A YEAR TO GET THINGS DONE…Sun, Jan 1st, 2017
posted by jjburton 11:01 PM We have some big plans this year. Plans to get moving on taking gigs and also delivering on some long overdue promises. Over the last few years, we’ve been doing a ton of r&d with the Morpheus Rig 2.0 project and it’s time to refine that work into something usable both for us and our users. We started some of that this last fall with meshToolsbut there’s a
long way to go.
* NEW MARKING MENU
* This is will be at the center of our new rigs and systems. Many of the concepts and ideas were fleshed out during the Morpheus project and this is a major elaboration of that effort. You can see the framework for that here
. As a short
window there are currently two modes: * TD — This is a replacement for our old tdTools. Having more stuff at a single button press proved very helpful with the Morpheus marking menu and it made sense to expand on that. This provides access to:* Raycasting
* Snapping
* Contextual tools
* Locinator (currently rewriting) * A myriad of utilities and much more * ANIM — This is just like the old anim marking menu plus a fewnew features.
* Eventually there will be a Puppet mode similar to what our users were testing for Morpheus 2.0* CORE REWRITE
* This work began in November 2016 and is ongoing. We’ve been bringing to our cgm.core those functions and modules that our necessary for our next steps and will eventually cull out the oldcgm.lib.
* MORPHEUS RIGGING SYSTEM * In order to take jobs again in the time windows we have, we will be pushing our rigger to completion and along with that delivering at least a rig or two to the community. This involves a bit of re-imagining of the some concepts but feel this is the best way to go to get our users and backers the most functional setup we can deliver. I’m not gonna flesh out all of our ideas here as having failed on delivering what I’d hoped for Morpheus 2.0 initially there is a rather understandable gaping canyon of trust for deliving. When it’s done, you’ll see it. Those that are involved on either our cgmTools or Morpheus slack channels will hopefully help test and push things.If anyone wants to join those, message us here or on facebook.* Rigs
* Biped base Morpheus * Some sort of quad rig to push some other modules through therigger.
* INTERNAL PROJECT
* We’ve had an internal content project on hold for way too long and we plan on getting that rolling this yearj@cgm
read comments
(0)
ANOTHER LOOK AT RAYS IN MAYA…Fri, Dec 23rd, 2016
posted by jjburton 09:12 PM First of all, what is ray casting? Ray casting in maya is when one of several api functions is called which when given a vector, start point and shapes to hit – returns points of intersection. Turns out you can use that information for all kinds of things. For several years now, we’ve been using it to place follicles, cast curves and shapes on other meshes and other functions. A few months ago, I took a quick pass at adding a snap to function to our implementation where a user selects objects to snap, activates the tool and then casts a ray in scene to get a point in space to snap to. It worked but penetrations were rampant and I planned on revisiting it when I had some time. Recently I found I had small chunks of time and this was one of the things that seemed useful to use one of those chunks for. The solution we ended up with is as follows: * Objects are selected * The tool is activated * The user left clicks the screen to cast a ray given the options they’ve provided via the marking menu * A locator is generated and continuously updated while the key isheld down
* When the left click is released, the snap targets: * Cast another ray either along their ‘down’ axis or casting back to the hit point depending or orient mode * The first mesh hit is assumed to be the driven shape of the control or object and provides the offset distance to use * The targets are snapped to a new point in space from the hit point out along the normal of the mesh or nurbs surface of that hit the offset distance detected or provided via the marking menu for fixedamount
* The objects are oriented (if required The core of our functionality for this work on this pass is found: * cgm.core.lib.rayCaster — I simplified our call to a more generic rayCaster.cast rather than breaking down multi hit and other modes via separate calls. Also added normal returns from hit points as it was necessary for the offseting * cgm.core.classes.DraggerContextFactory.clickMesh — oh so much…* Added offsetting
* Cast plane mode. Can create objects on a function generated castplane of x,y,z
* vectorLine — new create type for visualizing vectors and normals * data — new create type to just get data * object axis args — for orient stuff * Duplication — Selected objects are duplicated and snapped with each left click until the tool is dropped. * cgm.core.lib.math_utils.get_vector_of_two_points — Self evident. * cgm.core.lib.distance_utils.get_pos_by_vec_dist — Get a point along a ray given a point, ray and distance along that rayLessons learned:
* Not 100% satisfied on current orient mode and I think Bokser maytake a stab at that
* Maybe I was the only one still using it but zoo’s baseMel UI has some serious slowdown in 2016. Normal mc. calls are much much faster. I’m culling out our usage as I can for speedier ui’s. * Initially I was using a vector from the hit point to the snap object as the offset vector but it proved to be inconsistent – For example, if you cast to a far side of a mesh with a ‘far’ cast, the offset put it inside the shape that was hit. Ended up finding the normal of the mesh/nurbs shape hit point to be a much better offsetvector to use.
* There are some issues with Maya api 2.0 folks should be aware of if you should want to mess with this stuff yourselves. These were all found to be True in Maya 2016. * meshFn.allIntersections — When casting at poly edges, 2.0 fails.1.0 does not
* surfaceFn.intersect — Nurbs surface UV returns a different rawUV than 1.0’s. 1.0’s normalizes as expected, 2.0’s does not * surfaceFn.normal — Nurbs surface normal return is junk and broken with 2.0. 1.0’s is just fine. More on all of this, a vid or two and a new tool to play with in a fewweeks.
read comments
(0)
CGMTOOLS BUILD — FALL 2016Wed, Sep 21st, 2016
posted by jjburton 11:09 AM More vids on specific tool pages. See links inline Sometimes you just gotta ship something. For a LONG time now, I’ve been struggling to get Morpheus 2 where I wanted it. Having a small window to get something done because of personal stuff, I wanted to get something done. It’s also been way too long since we’ve released a ‘solid’ tool build so wanted todo that here.
I’ll keep this post updated with new builds as they become more stable until the next major release. * Build – 09.22.2016 * Path fixes that may have been causing some folks issues * Soft selection evaluation base functions in* math
* Most math functions now work with soft select evaluation * Added Reset to Targets to Base section * Added CopyTo to Target Math section * Build – 09.21.2016 So, I made a new tool encompassing a chunk of the tech from Morpheus 2’s development into a manner that is more user friendly. An overview of some of the tech added: * Versions — Things should be working from Maya 2011 – 2017* 2017
* Worked on resolving a host of issues. From gui hard crashing to zoo.path stuff mentioned in a blog post last month. * Help — cgmTools>Help * Added Report issue — link to bit bucket report issue form. PLEASE USE THIS TO RE PORT ISSUES. * Get Builds — link to page to download wip builds* CGMMESHTOOLS
— cgmTools>rigging>cgm.meshTools.* MESHMATH
* Symmetry evaluation implemented * Base to targed functions/selections * Lots of math functions for working with mesh targets – normallyblendshape work.
* RAY CASTING
* ClickMesh
* Added Nurbs Support * Added Snap support – Select targets, activate and snap stuff to any geo you have loaded as targets or in the scene. This is something I wanted to do way back when I first started playing with rayCasting and I’m happy to check that box * Follicles on nurbs now work * Curve Slice — Lathe curves from objects within mesh objects * Curve Wrapping — More advanced curve lathing * Implemented multi surface casting to most functions* UTILS
* Proximity Mesh/Query — Create proximity mesh or selections fromone mesh to another
* SNAP MAKING MENU
—
cgmTools>Hotkeys>Snap Tools * Added the rayCasting snap* cgmMeta
* A lot of the optimization from last month is in the build.* Web documentation
* Check the side bar here to find the new tool sections (meshTools,cgmMMSnap)
* cgmHotkeyer
* Back with Maya 2016, zoo’s hotkey setup no longer worked because of Maya changes. We wrote our own and all hotkey setup uses that now. * Other stuff – as the last post released build was years ago, there is a HUGE amount of tools and functions implemented.j@cgm
read comments
(0)
MESHMATH — FIRST PASSWed, Sep 7th, 2016
posted by jjburton 11:09 AM Been struggling on this one. The problem at hand is one of trying to get transformed blendshape targets baked down from one mesh to another. This path happened to be a dead end but hope it is useful forother purposes.
There are times when it is useful to see the difference in two meshes, or add/subtract the difference between two. In general, mesh math (aswe’ll call it).
There are a few new calls: * CGM.CORE.LIB.GEO_UTILS * meshMath_values — this call does the math portion of mesh math* meshMath
* MODES
* add : (target + source) * multiplier * subtract : (target – source) * multiplier * multiply : (target * source) * multiplier * average: ((target + source) /2 ) * multiplier* difference: delta
* addDiff: target + (delta * multiplier) * subtractDiff: target + (delta * multiplier) * blend: pretty much blendshape result if you added as a target using multiplier as weight * copyTo: resets to target to the source * MULTIPLIER — Multiplier value to throw in the mix with the othermath
* SPACE — object,world* RESULTMODE
* new: apply new duplicate of target * modify: modify the existing target * values: just get the values I’ll be adding this to a gui with other controls down the road.read comments (0)
MAYA 2017 WENT AND BLEW UP MY FRIDAY…(AND ZOO.PATH)Fri, Sep 2nd, 2016
posted by jjburton 09:09 PM So I got a message from a user on Thursday saying that cgmToolbox didn’t work in Maya 2017. Got around to installing 2017 and yup – borked. Spent the evening on Thursday identifying this issue andFriday was fix day.
If you don’t care about what was wrong and just want the bottom line — cgmToolbox should be working in 2017 Maya with the new build I’ll be pushing to the repository shortly.If you do care…
NOTE – If you use use zooToolbox and specifically zooPy.path.Path (or zoo.Path as I’ll call it), this post would behoove you to look at unless you like stumbling down the same rambling trail others havetread.
Been using zoo stuff for well over 5 years now and Hamish(creator of zooTools) is out of the game last I knew so I decided I had best fix the problem as googling the topic got jack squat and my usual sounding boards hadn’t come across it yet. Initially I thought Autodesk had gone and changed something and blew up my stuff but at the end of the day it turned out to be the fact that the python that 2017 is running updated the python str class. It just so happens that zoo.Path runs that as a subclass and was overloading some built in calls (find and replace specifically). Anyway, there is a walk generator for path stuff that pushing an instance of the zoo.Path into it rather than a ‘native’ string. Part of that (new to 2017) walker calls on ‘replace’ and so breaks because it needs to replace the path separator which zoo.Path specifically avoids in it’s overload. zoo.Path’s replace is ONLY for replacing tokens between the separators. Long story short, that raises an error of ‘/’ cannot be indexed because the find call (in zoo.Path) is specifically removing in it’ssearching.
Interesting tidbits: * With 2017, os.path.sep is now ‘\\’ up till 2017, it’s been ‘\’ at least all the way back to Maya 2011. On windows at least * Something changed with the os.walk generator to make it not work as it did before 2017. Maybe it used to str(arg) stuff in the process and now just passes through the string. Whatever the reason, it broke. * import sys || sys.version — gives you your python version. If you’re curious 2017’s is 2.7.11Some code changes
* zooPy.path.Path — If you have old versions of zoo installed and trying to run stuff in 2017. It’s gonna break on you if it hasn’t already. You can use this or do your own patch:) * osPath — call to return a os.path.sep joined version of the path. Path natively works with ‘/’ and the new double ‘//’messes with stuff
* _list_filesystem_items — changed the walk creator to use a osPath string to stop the failing * Cleaned out a bunch of stuff from __init__ files. — I’d had some built in calls for listing files and getting other info back before I knew the right way to do it or at least a better one.* cgmToolbox
* clean_scriptPaths/clean_pluginPaths — The call that was breaking stuff were my path setup stuff. As such, the env for these guys got a little borked during the troubleshooting. This was a quick attempt at fixing stuff. As an experiment, this may or may not be reworked. * Check all paths for valid paths (will add to the env withoutfailing)
* Removed a bunch of .git stuff that some other scripts I’d used from someone else apparently added. * Acts as a report for what’s there if you didn’t know as it reports all good ones * core.cgmPy.os_Utils * get_lsFromPath — reworked from the __init__ cleanup. Accepts file paths now and just gets the director they’re in for searching Now I can get back to cgmBlendshape for Morphy 2. Wrote some fun mesh math stuff toward that end earlier in the week as well but that’s a post for another day…:)j@cgm
read comments
(0)
INTRO TO METADATA CLASSMon, Aug 29th, 2016
posted by jjburton 02:08 PM We’re pleased to announce our first on demand class with Rigging Dojo – Intro to Metadata. This is our first class of this type in general and we hope folks find it helpful. Click on the pic above or here….
This class was created with two purposes in mind: * To share some of the many lessons learned over the past several years working with red9’s great code base * To provide a basic foundation of knowledge for those wanting to delve into Morpheus Rig 2’s continued development. Some might wonder what reason you might want to use red9’s code base or what benefits in particular you might find. The easiest way to give a quick example would be to provide a code example of a typical rigging task but with and without meta. Let’s look at something one does pretty regularly while rigging – do some stuff on a given jointchain.
_Note — this exercise was painful to write as I’d forgotten most of the standard calls and ways to do stuff as so much is just built innow…_
First, open up maya and make an amazing joint chain. If it’s not amazing, that’s okay – start over and do it again. Here’s some standard code based on a selected joint chain: def jointStuff_standard(): l_joints = mc.ls(sl = 1) for jnt in l_joints:#Validation loop before doing stuff... if not mc.objectType(jnt) == 'joint': raise ValueError,"Not a joint: {0}".format(jnt) for i,jnt in enumerate(l_joints): #First we're gonna create a curve at each joint. Name, parent and snap it ... jnt = mc.rename(jnt,"ourChain_{0}_jnt".format(i))#...gotta catch stuff when you rename it str_crv = mc.circle(normal = , ch = 0) str_crv = mc.parent(str_crv,jnt)#...gotta catch stuff when you parent it str_crv = mc.rename(str_crv, '{0}_crv'.format(jnt))#...everytime it changes mc.delete(mc.parentConstraint(jnt, str_crv, maintainOffset = False)) #Now we wanna add a locator at each joint - matching, position,orientation,rotation order loc = mc.spaceLocator(n = "{0}_loc".format(jnt)) ro = mc.getAttr('{0}.rotateOrder'.format(jnt)) mc.setAttr('{0}.rotateOrder'.format(loc),ro) mc.delete(mc.parentConstraint(jnt, loc, maintainOffset = False)) #Now if we wanna store data on each object one to another... mc.addAttr (jnt, ln='curveObject', at= 'message') mc.connectAttr ((str_crv+".message"),(jnt+'.curveObject')) mc.addAttr (str_crv, ln='targetJoint', at= 'message') mc.connectAttr ((jnt+".message"),(str_crv+'.targetJoint')) mc.addAttr (loc, ln='source', at= 'message') mc.connectAttr ((jnt+".message"),(loc+'.source')) #...the contains none of the built in checking and verifying built in to metaData and if you tried to #...run this on message attributes that existed or were locked or 15 other scenerios, it would fail Here’s meta code. Simpler. Clearer. Much faster to write. def jointStuff_meta(): ml_joints = cgmMeta.validateObjListArg(mc.ls(sl=1), mayaType = 'joint')#...gets us a validated meta data list of our selection for i,mJnt in enumerate(ml_joints): mJnt.rename("ourChain_{0}_jnt".format(i)) mi_crv = r9Meta.MetaClass( mc.circle(normal = , ch = 0)) mc.parent(mi_crv.mNode, mJnt.mNode) mi_crv.rename('{0}_crv'.format(mJnt.p_nameBase))#...p_nameBase property cgmMeta only mc.delete(mc.parentConstraint(mJnt.mNode, mi_crv.mNode, maintainOffset = False)) #...same data storage mJnt.connectChildNode(mi_crv,'curveObject','targetJoint') mJnt.doLoc()#..doLoc cgmMeta only If this looks like something you’d like to delve into, check out the class. I wish there was a class like this out there when I started with the meta stuff 4 years ago. Hope you find it helpful:)j@cgm
read comments
(0)
Previous Entries
SEARCH:
CONNECT
* CG Monks – FB
* BitBucket Repos
* Vimeo Channel
* Morpheus Page
* Morpheus Group
CGM.CORE
* cgm.core
* cgmNode
* cgmObject
* cgmAttr
* cgmObjectSet
* cgmOptionVar
* cgmFuncCls
WORD CLOUD!
2017 animation
attrTools
bitbucket
cgmToolbox
clickMesh
clickSurface
Commercials
git
lessons learned
locinator
Maya
Morpheus Rig
News
Optimization
polyUnite
ProblemKicker
puppetBox
Python
r9Meta
Rigging Dojo
setTools
tdTools
This Week @ CGM
Tips
Updates
Wing IDE
Workflow
CATEGORIES
* Announcements (45)* Blackboard (11)
* Builds (11)
* Initial Setup
(5)
* Problem Solving
(7)
* Tools (4)
* Training (3)
* Tutorials (7)
* Updates (4)
BEST OF MORPHEUS
* Skate 4 Life
* Paulie Jimmy v04
* 2nd Semester Dialogue - Universal Translator * The Game - Retaliation (Trailer) * Roger Dialogue Animation* Chef Animation
* Yarbles
* Ariel Lee Animation Reel 2013 * 11 second Club December 2012 Entry* I WORRY
RECENTLY…
* ‘LBS’ Proxy Alpha 1! * Looking back at 2017… * Storing shapes as messages (concept testing) * Storing message data with dicts! * 2017 — a year to get things done…ARCHIVES
* April 2018 (1)
* December 2017 (1) * January 2017 (3) * December 2016 (1) * September 2016 (3)* August 2016 (1)
* July 2016 (1)
* May 2016 (1)
* April 2016 (4)
* February 2016 (4) * October 2015 (1)* March 2015 (1)
* February 2015 (1) * December 2013 (1) * September 2013 (1) * January 2013 (1) * November 2012 (2) * October 2012 (6) * September 2012 (2)* August 2012 (6)
* July 2012 (6)
* June 2012 (9)
* May 2012 (2)
* April 2012 (7)
* March 2012 (5)
CGMonks Entries (RSS) and Comments(RSS) .
Details
Copyright © 2024 ArchiveBay.com. All rights reserved. Terms of Use | Privacy Policy | DMCA | 2021 | Feedback | Advertising | RSS 2.0