Your feedback on time, creativity, and leadership

A business is concerned with time as the longer it takes to produce value, the less value there is. Being first to market. The cadence of software releases. Time to first response for customer service. Its all about time.

 

Creative teams are concerned about time as well. How long it takes to make something informs the business implications above.

 

“Time – the one asset none of us are ever gonna get more of. – Gary Vaynerchuck”

 

We build autoriggers not because they are cool. We build them so that we can do more of the same or better quality work in less time.

  • Reduce human error
  • Run automated processes quickly
  • Provide a standard user experience and interface
  • Reuse code and assets
  • Reduce many hours of manual labor to minutes of machine time

 

They save time.

 

Same as most of the tools in your toolbox. This process/system/tool/rig is too slow is the biggest complaint I’ve heard as an employee, manager, teacher, Technical Art Director and consultant.

 

Every creative person would like to do what they do faster. To gain that mastery, you have to do the work.

 

10,000 Hours

But Ten Thousand Hours is only half the equation. The theory goes that one needs to practice for 10,000 hours to achieve mastery. What if you spend all that time practicing the wrong thing or the right thing with the wrong technique? That’s the heart of the matter that we were discussing when we started Rigging Dojo. One needs guidance, instruction and mentorship to progress. To identify how to progress past the plateaus. And even better to identify the plateaus before you arrive at them.

 

No one can spend those hours for you. You have to do the work. Your mentor can assist, guide, coach, challenge, push, console and a million other things but you have to do the hard part.

 

Brad, Josh and I talk about this a lot. Amongst ourselves, with our mentors and through our Apprenticeships, Group Courses, or Self-Paced classes. We advise:

 

Adapt what is useful, reject what is useless, and add what is specifically your own. 

 

Creative teams need Leadership

Recently I’ve been thinking about applying this beyond the skills and techniques we usually teach at Rigging Dojo, and where the needs are in the development of creative work as a whole. Not just rigging and animation for games and film, our core experience.

 

At a larger level, many creative teams or people I talk to and work with say that there’s a clear lack of leadership for creative people in their workplace.

 

Brad, Josh and I have a lot of leadership experience. From actual job roles as Supervisors, Directors and Managers to more informal and in-the-trenches leadership work.

 

On September 12th, 2017 I’m giving a talk at AniMAtic Boston on these topics. If you’re in Boston at that time, please join us.

 

We’re also spending some time to think through how we could teach these topics. The goal of the course/service would be to identify the major issues with leadership in the creative workplace, and provide a pathway to be a better communicator, and understand leadership. That would apply to both the Leads and the people being lead.

 

This is still just taking shape, so feedback and ideas are appreciated! We’d love to hear from you on this. We put together a survey if you’re interested. It’ll take you 15-30 minutes to complete.

 

The Survey.

 

More info soon. Let me know what you think in the comments to at [email protected].

 

Cult of Rig : Season 00 Day 010 Finishing Pedals and GodNode Components

Season 00 Day010 Stream – Finishing Pedals and GodNode Components

Downloads:

Pilot Season – Download

 

Rigging Dojo Notes:

This week we are not doing much of a breakdown, there are many details and things that you simply have to watch through the video to understand and get the most from. We will pick out a few things that we want to explain or highlight. Enjoy!

God node (Master control)

  • Drive the whole rig but doesn’t have to be in world space
  • top_top_world_ node, hidden, used by only shot final, this is the world space of your rig, the GodNode would be under it

Building the component

cult of rig god node hiearchy

  • Building a non-cyclic constraint

Connecting the God Node component in to the rig

there is a good few bits of trouble caused by the node editor not being set to sync… jump to here to see the hook up of the offset nodes

Maya name space : “underworld” and all the connective nodes between SRT nodes get assigned that name space.

On to the next video!

 

 

Get involved:

Scene used to display the functions is available at:
http://www.cultofrig.com/resources/re…
Maya 2016 and up.

Follow me on twitter for announcements and news
https://twitter.com/ThE_JacO

Check out the calendar for up-to-date information and times
http://cultofrig.com/streamcalendar

Follow the Streams live on Twitch
https://www.twitch.tv/cultofrig/

And keep up to date with news on the website
http://www.cultofrig.com

Cult of Rig : Season 00 Day 009 Applying Math to Fix Components

The rig as you see it by the end of this session, plus a little bit of crud cleaned out, is now available at
http://www.cultofrig.com/resources/re…
If you’ve fallen behind but still want to nodel with me, now you can catch up. Or just take it apart 🙂

Season 00 Day009 Stream – Applying Math to Fix Components

http://www.cultofrig.com/2017/06/18/pilot-season-day-8-applied-math/
“Building upon the theory established the previous day we can now flatten the rig hierarchy some more to extract the pedals from their FK only position, and complete the transform for the staff to inherit rotation.”

Rigging Dojo Notes

  • Why not make everything flat? While keeping the controls not in a deep hiearchy helps with flexablity but making a flat “component” limits the amount of control you get out of the component, in Maya you can always get worldspace from a node so making everything worldspace/flat you loose any local data you get from a hierarchy.
  • Fix the rig:
    • Graph from the output or forward from the input of the component to start walking the graph and troubleshoot the rig.
    • Matrix multiply pedals_M_staff_ctrl  by pedals_M_staff_ctrl_srtBuffer (order matters)
      • decompose the matrix and  and drive the rotation of the staves_srt to fix the current rig bug.
  • Fix IK control

  • To get the IK FK blend, need to make sure both are in the same space
  • Here Raf blasts away chunks of the rig instead of trying to fix or figure out what they were doing.
  • He explores getting the pedals_M_ikPedals_projectedAngle_fnode hooked up to the same space as the FK driver.
  • There is some discussion as he rehooks up the nodes so it is a good point to watch from here
  • Tips: expression vs. nodes? try both and see what is faster in your rig but stay away from Python Nodes so they don’t play well with parallel.

Pedal settings of the IK FK attribute

  • If you name the attribute FK IK switch, then that is the order it should blend in, pay attention to those details.
  • *Q: do you alias attributes? No Raf hates them and it complicates things later on, don’t bother.
  • Some left over logic nodes from past videos Raf hooked the nodes back up to the animBlendNodeAdditive  weights to hook it back up like before.

Question: What about rigging like this with so many nodes vs. constraints etc, does it become complicated, but the point of this is to learn to rig with CLEAR input and Output of each component. It is easier to refactor for complex rigging.
Maya needs compound nodes (if they do) this style of rigging will scale better as it gets more complex (parallel processing for Maya)

Request: Node editor: let us grab a connection line and drag duplicate to another node for connection instead of having to click on the source node and drag the connections.

Change space of the pedals and update the rig

Fix a pedal offset bug

RDNotes:At this point in the video, Raf has to explore and troubleshoot the graph- he knows what he is doing and build the graph and still hits a problem. This is how rigging goes, it isn’t a perfect straight path to a working rig. This is what the job is, and worth watching how it works through how to fix the problem.

….to be continued in the next stream

 

 

Get involved:

Scene used to display the functions is available at:
http://www.cultofrig.com/resources/re…
Maya 2016 and up.

Follow me on twitter for announcements and news
https://twitter.com/ThE_JacO

Check out the calendar for up-to-date information and times
http://cultofrig.com/streamcalendar

Follow the Streams live on Twitch
https://www.twitch.tv/cultofrig/

And keep up to date with news on the website
http://www.cultofrig.com

Cult of Rig : Season 00 Day 008 Math Crash Course

Season 00 Day 008 Stream – Math Crash Course – Trigonometry and Matrix Mult

Trig is the study and solution of triangles…or all angles

Starting with Trigonometry as it is a basic and good place to start vs. starting with linear algebra that creates lots of extra wasted calculations.

“You hear me mention custom nodes…doesn’t mean you don’t have to use custom nodes unless you need performance, but the math part is important for foundations”

Trigonometry

  • Right triangle is where we start (triangle with 90 degree corner)
    • degree vs. radian
      • Also the “Why” of when unitConversion nodes show up as you connect a translate value to rotation.
      • unitConversion nodes are normal maya nodes with some basic math (conversion factors) and change the type of the connection at the output (
    • Scene used to display the functions is available at:
      http://www.cultofrig.com/resources/re…
      Maya 2016 and up.
  • Back to radians
    • Radius of the circle  R=1   means 1/2 is PI 3.14  so full raius is 2 PI R
    • when you see radians the start of the circle is 0, end is 2 PI, half circle is 1/2 PI
  • Degrees
    • Circle is broken in to 360 values , 0, 90, 180, 270, 360
  • The relationship between the two is PI = 180   so if you need to convert them 3.14/180 to convert so when you look in the unitConversion node you see this math happening.

When you create triangles from a unit circle you always get hypontus of 1, simplifying calculations.

function of an angle (works in radians always works  between [-1,1]

  • Sin
  • Cos
  • Tangent ( can be infinite)

Each function has an inverse

  • arc sin
  • arc cos
  • arc Tangent

What do these do?

If we say the we get the Sin of the triangle leg, the Arc Sin will give us the Angle.

Given any axis, if you are rotating around Z for example , clockwise will be negative.  This isn’t great so flip the mesh around so that the rotation will be positive.

*Do follow along in Maya with the example scene and also create with Raf.

  • Build some primitives named
    • sine
    • cosine
  • We will rotate the HY transform node (from the example file) and on its rotation  to create an expression

skip from 30:00 to here to see 35.32 to see the expression work

in expression editor type sine.ty = sin(hy.rz) and click create

Rotate the hy node to see the SINE node translate up and down. Because the connection creates a unitConversion by default you can change the value in the unitConversion node to 1 to allow it to pass through to the SIN() in the expression with no rad/deg convert.

Next we create the cosine transform expression  cosine.tx = cos(hy.rz) so we now have our nodes translating up and down and left and right as we rotate the HY node.

Behind the scenes in Maya when you take  a “vector” and rotate it with Matrix Math.

If we connect the  translate X from cosine and translate Y from sine to a new transform you can see that the new Transform (say a new sphere) you will get the same action as if a parent constraint on the new sphere following the HY node.

The combination of the Sin and Cos create a translation the spears to be a rotation.

Soh Cah Toa

For any giving angle there are two sides, (legs) adjacent, opposite and hypotenuse

S(?) = 0/h  C(?)=a/h  T(?)=o/a

Law of Sin and Law of Cosin 55:30

a/sinA = b/sinB = c/sinC

Law of cosines is the foundation for IK solvers like the 2 bone solver

“I mention all of this because when ever you are using Matrices because this is what you are doing under the hood a lot”

Matrix:

Linear field of numbers with sides

Vector for example is a single column Matrix.

Raf gets in two a few topic tangents and you are best watching it as it is hard to note what he was talking about with all the drawing and graphics.

What happens when the Matrix is not normal? 1:15

QA:

Why is this important?

 

 

Get involved:

Scene used to display the functions is available at:
http://www.cultofrig.com/resources/re…
Maya 2016 and up.

Follow me on twitter for announcements and news
https://twitter.com/ThE_JacO

Check out the calendar for up-to-date information and times
http://cultofrig.com/streamcalendar

Follow the Streams live on Twitch
https://www.twitch.tv/cultofrig/

And keep up to date with news on the website
http://www.cultofrig.com

Cult of Rig : Season 00 Day 007 Matrix math rig clean-up

Season 00 Day 007 Stream – Cleaning the Components

“Day 7, we introduce matrix multiplication and then proceed to an uninterrupted stretch of rigging proper (yay!)
Lots of nodelling.”

 

What is the Matrix? 6:00 (video)

Raf hits some basics of the Matrix, the Matrix is the transform in Maya and describes what was required to move the object to where it is in space.

If you want to reverse the path of the object back to 0,0,0 this is the “inverse Matrix” will give you this path.

*order maters in how they are multiplied*  Similar to Rotate order

“Build a rig that you are not affrid to change the rig”

Implement the rig:

If the rig so far has been built correctly you can simply select all the “deform” nodes and graph them and cut the connections. (rig should stop updating the mesh after)

Don’t be afraid to detach chunks of your rig and re-hook up later.

Next hunt down any nodes that are in the connections but not named correctly

example:

  • pedals_M_cmpnt
    • input
      • localWorld_srt  updated to pedals_M_localWorld_srt
  • Control graphed and  “wheel_M_main_ctrl_wMtx_output_fNode2” gets updated to match what the in and out connections are “pedals_M_staffworldMtx_fNode”
  • Continue to clean the graph and make sure the IK FK blend works
    • Here you need to watch closely as Raf shows a fearless editing of the existing rig nodes to prep the rig.

Build a new attribute holder

  • Create new curve shape
    • pedals_M_settings_ctrl and parent it under the pedals_M_cmpnt-controls
    • It needs to move along with the rig
      • pedals_M_world3staff_offset_srt-> pedals_M_staffworldMTX_fNode-> pedals_M_settings_ctrl
  • Add custom attribute FKIK_switch  and pedals_gravityAligned

We had this working before but it gets disconnected and cleaned up

  • We were using the animBlendNode_AdditiveRotation weight to rotate the node to flip the value and also do the blend.
  • Make sure animBlendNode_AdditiveRotation.output -> pedals_M_pole_srt.rotation (this still works from our process before)
  • Few more cleanup passes on some of the  other unnamed nodes multMatrix1, decomposeMatrix2, vectorProduct3,angleBetween node, from pedals_M_world3staff_offset_srt.   pedals_M_localizedPEdal2staff_fNode, pedals_M_localizedPEdal2staff_mtx2srt, pedals_M_ikPedals_projectedAxis_fNode, pdeals_M_ikPedals_projectedAngle_fNode

“Don’t just copy what I do, become familiar build dexterity with the Node editor”

 

The next process is hooking up the logic for the connections, FKIK_switch out to Weight B on but the value needs to be flipped- Using Reverse node to flip the 0 to 1 should give us the weight swap.

 

FKIk_swtich to animBlendNode_AdditiveRotation.Weight A to finish the rig.

Next get multDoubleLinear node take FKIK switch attribute to its input 1 and set input 2 to -1 to flip the incoming value and hook it up to the animBlendNode_AdditiveRotation.Weight A .

Rename your nodes and clean up the graph on what you just created and hooked up.

Staves rigging:

  • wheel_M_main_ctrl_wMtx_output_fNode1.Translate -> staves_srt.Translate
  • animBlendNode_AdditiveRotation.rotate-> staves_srt.rotation
  • update name animBlendNode_AdditiveRotation  to pedals_M_FKIK_rotBlend_fNode

Continue clean up and end: (1:15:00)

Here Raf walks the graph and updates the names of the nodes to help make sure they make sense to the rig and do what they are doing, there are many changes here so take the time to watch this part of the video or clean up the rig names on your own.

 

 

Get involved:
Follow Raf on twitter for announcements and news
https://twitter.com/ThE_JacO
Follow the Streams live on Twitch
https://www.twitch.tv/cultofrig/
Subscribe and watch past broadcasts
Cult of Rig -YouTube
And keep up to date with news on the website
http://www.cultofrig.com