Log into your account to keep track of your progress. You can work through the lessons without logging in but your progress will be lost when you refresh the page.

In this series about Apex and Apex Script, we will dive deep into Houdini 21’s new rigging framework to build functions, subraphs, and components from scratch in order to create a piston rig and a hexapod rig.

We’ll take a different approach to understanding what Apex is and the possibilities it offers for the rigging game. We will be thorough with all the tiny bits of Apex, and hopefully, we won’t leave any gaps, paving the way for a broader discussion about standardization, best practices, and workflow ideas to make the rigging process in Houdini faster and better.

At the end, we’ll have not only two mechanical rigs, but also procedural components and a custom pipeline that can speed up your future projects.

COMMENTS

  • cncverkstad 3 months, 3 weeks ago  | 

    Thanx <3

  • chrisrezende 3 months, 1 week ago  | 

    This is undoubtedly one the most comprehensive mechanical rigging courses in Houdini/APEX. Thank you very much for this fantastic contribution to the Houdini community!

  • coccarolla 3 months ago  | 

    Any way to fix this error?

    Invalid source /obj/piston/piston_constraint/apex_evaluate_script.
    (Error: Error generated by Python node.
    Line 101: :: graph, Bx = ``GetAnimatedRefXformHCFX(graph, rotatingJointName)``
    Unable to set arguments for 'GetAnimatedRefXformHCFX'. Please check that the function name and usage is correct.).

    -in the piston_constraint apex script!?

    • guilhermecasagrandi 2 months, 2 weeks ago  | 

      Sorry for the delay. If you have further questions, please ping me on Discord.

      That's happening because you haven't installed the subraphs. I left some notes about those. Select the apex script nodes with the subgraphs, hit save, and then restart Houdini.

  • animatekoi 1 week, 2 days ago  | 

    Hi Guilherme , thank you for your tutorials, they are great!
    Have a question how to bake constraints values back to object channels? we have input [t,r,s] but I can't find a way how to update those values from constraints, are there any APEX workflows. I watched Sidefx's video about how to animate APEX rigs, and they showed how to use UI tool constraints but if I need to constraint more than 10 objects or so and then bake anims it would be not very usable for example if I need to reabake anims from one group of ctrls to another . Thank you.

    • guilhermecasagrandi 1 week, 2 days ago  | 

      Hey man. Ping me on Discord so we can chat.
      I'm not sure what you want, because the workflow works as follows:
      1. The animate state gets the values from the viewport and "bakes" them into the channel primitive.
      2. This value is then read in the inputs of the apex graph and fed into the transform objects.
      3. The graph is evaluated, and the updated geometry is retrieved and displayed in the viewport.

      So, I'm not sure what you mean by "baking constraints values" then.

      The viewport state handles constraints between different apex characters, since each character is packed separately.

Please log in to leave a comment.