CGTalk > Software > Autodesk Maya > Maya Character Setup
Login register
Thread Closed share thread « Previous Thread | Next Thread »  
 
Thread Tools Search this Thread Display Modes
Old 03-15-2013, 10:24 PM   #1
giordi
Lord of the posts
 
giordi's Avatar
portfolio
Marco Giordano
Creature TD
Double Negative
London, United Kingdom
 
Join Date: Aug 2008
Posts: 618
MG_tools pro and Lite released! Free download



Hello everyone !
I have just released my plugin bundles , they are called MG_tools pro and lite.
Those bundles holdsa series of custom nodes that can be uses to speed up workflow and rig performance aswell!.
Those custom nodes can be really usefull also for animators and developers.

The only difference from the lite and pro is that the pro version has more nodes for which source code has not been released.
Both bundles are complitely free to download and comes with 90% of source code aswell!


Bundles are downloadable in several places :
My website :
www.marcogiordanotd.com

creative crash :
http://www.creativecrash.com/maya/d...hance-your-rigs

github

https://github.com/giordi91

Per maggiori informazioni sui nodi potete trovare svariati video a riguardo sul channel vimeo :

https://vimeo.com/marcogiordano91/videos

Nodes are documented in order to make their use easier to use doc can be found here :

http://www.marcogiordanotd.com/MG_toolsDoc/

List of nodes in the V1.1:

MG_toolsLite content :

- MG_nurbsRivet (MTypeId(0x80000));
- MG_polyRivet(MTypeId(0x80001));
- MG_jiggleVector (MTypeId(0x80002));
- MG_vector (MTypeId(0x80003));
- MG_trigonometry (MTypeId(0x80004));
- MG_poseReader (MTypeId(0x80005));
- MG_splinePath (MTypeId(0x80006));
- MG_vectorGL (MTypeId(0x80007));
- MG_dotProduct (MTypeId(0x80008));
- MG_crossProduct (MTypeId(0x80009));
- MG_cacheValue (MTypeId(0x80010));
- MG_curve (MTypeId(0x80011));

MG_toolsLite V 1.1 available compiled versions :

windows :
- maya2013x64
osx : None
linux : None

MG_toolsPro content :

- MG_nurbsRivet (MTypeId(0x80000)); demo : https://vimeo.com/47952936 , https://vimeo.com/47930938
- MG_polyRivet(MTypeId(0x80001)); demo : check the nurbs rivet demos
- MG_jiggleVector (MTypeId(0x80002));
- MG_vector (MTypeId(0x80003));
- MG_trigonometry (MTypeId(0x80004)); demo : https://vimeo.com/34701659
- MG_poseReader (MTypeId(0x80005)); demo : https://vimeo.com/60409388
- MG_splinePath (MTypeId(0x80006)); demo : https://vimeo.com/57804110
- MG_vectorGL (MTypeId(0x80007)); demo : https://vimeo.com/57804482
- MG_dotProduct (MTypeId(0x80008));
- MG_crossProduct (MTypeId(0x80009));
- MG_cacheValue (MTypeId(0x80010));
- MG_curve (MTypeId(0x80011)); demo : https://vimeo.com/47930483
- MG_twist (MTypeId(0x80012));
- MG_slerpSpine (MTypeId(0x80013)) -------------> coming soon;
- MG_pathSpine (MTypeId(0x80014)); demo : https://vimeo.com/59338181
- MG_softIk (MTypeId(0x80015)); demo : https://vimeo.com/60407407

MG_toolsPro V1.1 available compiled versions :

windows : - maya2013x64
osx : None
linux : None


Project is still young and the community can do a lot to make it grow!
For example with feedbacks bug reportings ,comment , critique , wrap scripts to hook up the nodes quickly and so on.
Every help is more then welcome and you will get credits for it.

I am already working on next release with many ugrades and new nodes.
Of course the bigger the response from the communitiy the more the project will grow so I hope many people will help and share the project.

and now Have fun!


__________________
My website/blog , with a lot of tips&tricks about maya API,python,and pyqt , and tutorials
www.marcogiordanotd.com
llinkedin
 
Old 03-17-2013, 04:24 PM   #2
thematt
brain filler
 
thematt's Avatar
matt
EMCA
France
 
Join Date: Mar 2003
Posts: 1,514
I admire your dedication and hep of the comunity, those nodes seems extremly usefull, thanks for sharing it's really a great work. thanks a lot for making this available.
cheers
 
Old 03-18-2013, 03:13 AM   #3
r4inm4ker
triangle noodle maker
 
r4inm4ker's Avatar
portfolio
Jefri Haryono
Taipei, Taiwan
 
Join Date: Oct 2006
Posts: 369
Thanks a bunch for sharing them !!
__________________
http://www.brainyart.me
 
Old 03-18-2013, 01:54 PM   #4
djx
Where's my pony?
 
djx's Avatar
David Johnson
vfx & creature td
Melbourne, Australia
 
Join Date: Jun 2003
Posts: 3,389
Looks very cool Marco. Will look forward to giving them a try.

David
__________________
http://www.djx.com.au
 
Old 03-18-2013, 08:53 PM   #5
giordi
Lord of the posts
 
giordi's Avatar
portfolio
Marco Giordano
Creature TD
Double Negative
London, United Kingdom
 
Join Date: Aug 2008
Posts: 618
thank you so much guys

stay tuned for next releses
__________________
My website/blog , with a lot of tips&tricks about maya API,python,and pyqt , and tutorials
www.marcogiordanotd.com
llinkedin
 
Old 03-18-2013, 09:28 PM   #6
tontonsuspect
puppet tamer
cedricB
CharacterTD
France
 
Join Date: May 2004
Posts: 145
Hi marco,

we usually talk on skype for API related stuff, but will do some comment here since i am not at home for the next months....

Nice effort, and i can see real improvent from the last months:
I am firm believer that you can learn faster by hacking and studying existing nodes:

I can make some assumption and point that you did
- MG_dotProduct , MG_crossProduct , as an exercise?

The vectorProduct and angleBetween node in maya already does this task well out of the box and the maya API provides a MVector class with all the math ready to use so there is little value to implement a vector class....( just me chiming here, its your project and of course you do as you want but the best element , usually is the one you dont need to create )

-MG_trigonometry: I can understand the need for people to do things visually ala visual programming( like ice in XSI ). Long ago Morteza from cgdna( http://www.cgdna.com/web/mathematic-nodes-limit ) provide a lot of these nodes for maya ( http://www.creativecrash.com/maya/d...ray-support---2 ) .

Usually some operation are much straightforward in maya by using curve or surface operation( like the closestpoint on curve in the API and in regular nodes ) and in my projects it was more logical to build a triangle solver( like from 2 angles and one edge length build and output the remaining attributes of this triangle )

In next post i will talk about coding style ,documentation and on poseReader / splinePath
 
Old 03-18-2013, 10:12 PM   #7
giordi
Lord of the posts
 
giordi's Avatar
portfolio
Marco Giordano
Creature TD
Double Negative
London, United Kingdom
 
Join Date: Aug 2008
Posts: 618
Quote:
Originally Posted by tontonsuspect
Hi marco,

we usually talk on skype for API related stuff, but will do some comment here since i am not at home for the next months....

Nice effort, and i can see real improvent from the last months:
I am firm believer that you can learn faster by hacking and studying existing nodes:

I can make some assumption and point that you did
- MG_dotProduct , MG_crossProduct , as an exercise?

The vectorProduct and angleBetween node in maya already does this task well out of the box and the maya API provides a MVector class with all the math ready to use so there is little value to implement a vector class....( just me chiming here, its your project and of course you do as you want but the best element , usually is the one you dont need to create )

-MG_trigonometry: I can understand the need for people to do things visually ala visual programming( like ice in XSI ). Long ago Morteza from cgdna( http://www.cgdna.com/web/mathematic-nodes-limit ) provide a lot of these nodes for maya ( http://www.creativecrash.com/maya/d...ray-support---2 ) .

Usually some operation are much straightforward in maya by using curve or surface operation( like the closestpoint on curve in the API and in regular nodes ) and in my projects it was more logical to build a triangle solver( like from 2 angles and one edge length build and output the remaining attributes of this triangle )

In next post i will talk about coding style ,documentation and on poseReader / splinePath


Hey man! thanks for the feedback ,

yes the dot and cross were born as exercise (with the trigonometry node they where my first three nodes ever ) actually now the dot product does more operations then simple dot product , but anyway I decided to implement them anyway they might be usefull to someone , as node or source code.

Regarding trigonometry yes there are other way to achieve same result like even use a set simple driven key and read the value at the point you need and so on.
I do know they are not the only math node around but usually I do the nodes I need for my stuff then I just give it out for free.
A while ago I needed the sin node for procedural animation so I made my own.
__________________
My website/blog , with a lot of tips&tricks about maya API,python,and pyqt , and tutorials
www.marcogiordanotd.com
llinkedin

Last edited by giordi : 03-18-2013 at 10:37 PM.
 
Old 03-19-2013, 08:56 AM   #8
Mark-J
Know-it-All
 
Mark-J's Avatar
portfolio
Mark Jackson
CEO & Founder
Red9 Consultancy
United Kingdom
 
Join Date: Feb 2005
Posts: 408
Nice looking softIK, same as the setup we used to have at Eurocom. Much better to have it as a separate node than to try and do the solver and ik in the same plugin. Going to download these later and take a good look at them.
cheers

Mark
 
Old 03-19-2013, 12:51 PM   #9
nookie
Know-it-All
 
nookie's Avatar
portfolio
Luca Fiorentini
Lighting Artist
Lucasfilm Animation
Singapore, Singapore
 
Join Date: Jan 2004
Posts: 367
Send a message via MSN to nookie
Cool! Thanks for sharing!
 
Old 03-19-2013, 10:38 PM   #10
tontonsuspect
puppet tamer
cedricB
CharacterTD
France
 
Join Date: May 2004
Posts: 145
Here is the next part of my detailed review...

lots of variable name are inconsistent, and it lacks also some comment to explain the overall though behind your node( it takes time and discipline to do it and i also dont bother with mine...)

There is a lot to learn from meisters of ice age:
Paul Molodowitch of pymel fame... look at his softIK: https://github.com/elrond79/pmSoftI...src/pmSoftIK.py

Judd simantov : jsimStretchNode.py on his blog
or the old ik example from michael hutchinson :elastik IK
http://www.michael-hutchinson.com/downloads/index.php

safak oner work is also interesting : http://www.safakoner.com/rnd/stormV3/stormV3.html

MG_cacheValue: averaging the value feeding a node works but its still a a history dependent method: when you rewind your time at the end of your time line you will be screwed( i build several twist reader with time input to detect the first frame an use a bind value as a fresh value in this case )

maya own implementation in the orientconstraint( cache or no flip mode do that well ) does the jobs but is gear for deformation baking: let your animator have twist flip it doesnt matter as long as you can bake correctly the final result( at least it is what I do ).

MG_splinePath: have a look at adammechtley"s AM_Ribbon: http://adammechtley.com/2010/02/new...soon-am_ribbon/ you can learn bit about rotation minimizing frame using quaternion here.

My only chime with curve sample is that when your number is low it doesnt capture the curve correctly..( as you already know )

that why i worked on a node that have a fix number of span subsample and you slerp between these knot to have a more robust node.

But now i scrap all of this and only use the almighty extrude node with curvature driven adaptive curve node( a thing bit different than the rebuild node in curvature mode )
 
Old 03-20-2013, 07:29 AM   #11
giordi
Lord of the posts
 
giordi's Avatar
portfolio
Marco Giordano
Creature TD
Double Negative
London, United Kingdom
 
Join Date: Aug 2008
Posts: 618
Quote:
Originally Posted by tontonsuspect
Here is the next part of my detailed review...

lots of variable name are inconsistent, and it lacks also some comment to explain the overall though behind your node( it takes time and discipline to do it and i also dont bother with mine...)

There is a lot to learn from meisters of ice age:
Paul Molodowitch of pymel fame... look at his softIK: https://github.com/elrond79/pmSoftI...src/pmSoftIK.py

Judd simantov : jsimStretchNode.py on his blog
or the old ik example from michael hutchinson :elastik IK
http://www.michael-hutchinson.com/downloads/index.php

safak oner work is also interesting : http://www.safakoner.com/rnd/stormV3/stormV3.html

MG_cacheValue: averaging the value feeding a node works but its still a a history dependent method: when you rewind your time at the end of your time line you will be screwed( i build several twist reader with time input to detect the first frame an use a bind value as a fresh value in this case )

maya own implementation in the orientconstraint( cache or no flip mode do that well ) does the jobs but is gear for deformation baking: let your animator have twist flip it doesnt matter as long as you can bake correctly the final result( at least it is what I do ).

MG_splinePath: have a look at adammechtley"s AM_Ribbon: http://adammechtley.com/2010/02/new...soon-am_ribbon/ you can learn bit about rotation minimizing frame using quaternion here.

My only chime with curve sample is that when your number is low it doesnt capture the curve correctly..( as you already know )

that why i worked on a node that have a fix number of span subsample and you slerp between these knot to have a more robust node.

But now i scrap all of this and only use the almighty extrude node with curvature driven adaptive curve node( a thing bit different than the rebuild node in curvature mode )



Thanks for the reference , usually everytime I put hands again on a node I go for a cleaning round, that s happen quite often since I keep expanding them ,

regararing MG_cacheValue that was an early test , currently that node is being used on a rig so when testing is done I am gonna release it , basically since It is a simulatation it now has all the needed attributes to deal with it like start frame , reset cache and so on , like it was a hair or cloth simulation at the same way the jiggleVector node has.

MG_splinePath , in this node I didnt plan on doing any rotation , this node was born for "chain" or tank trail rigging or for animating stuff attached to a curve by using the parallel frame transportation , regarding the sampling that s true the lowes is the sampling the less accurate is the computation but I preferred to give the freedom to the user handling the node to set the wanted sampling.

Thanks for your time and effort in the review!
__________________
My website/blog , with a lot of tips&tricks about maya API,python,and pyqt , and tutorials
www.marcogiordanotd.com
llinkedin

Last edited by giordi : 03-20-2013 at 07:44 AM.
 
Old 03-20-2013, 07:29 AM   #12
CGTalk Moderation
Lord of the posts
CGTalk Forum Leader
 
Join Date: Sep 2003
Posts: 1,066,481
Thread automatically closed

This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.
__________________
CGTalk Policy/Legalities
Note that as CGTalk Members, you agree to the terms and conditions of using this website.
 
Thread Closed share thread


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
CGSociety
Society of Digital Artists
www.cgsociety.org

Powered by vBulletin
Copyright 2000 - 2006,
Jelsoft Enterprises Ltd.
Minimize Ads
Forum Jump
Miscellaneous

All times are GMT. The time now is 04:01 PM.


Powered by vBulletin
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd.