A new version of Cineversity has been launched. This legacy site and its tutorials will remain accessible for a limited transition period

Visit the New Cineversity
   
 
Recreating PSR Maintain Offset in Expresso?
Posted: 24 June 2019 09:57 PM   [ Ignore ]  
Total Posts:  292
Joined  2017-09-24

Hi,

I’m trying to recreate the PSR Maintain Offset in Xpresso.
I got the position and rotation done but I am unable to recreate the scale.

You can see an illustration of the problem here:
https://www.dropbox.com/s/sn4bv6umzde18vq/c4d115_recreating_PSR_maintain_offset.c4d?dl=0

Thank you for looking at my problem.

 Signature 

C4D Body Mechanics Rigs (Gumroad)  //    Website

Profile
 
 
Posted: 25 June 2019 01:44 AM   [ Ignore ]   [ # 1 ]  
Administrator
Avatar
Total Posts:  12043
Joined  2011-03-04

Hi Ben,

Thanks for the file.

Please have a look here:
https://www.amazon.com/clouddrive/share/YH2ZZFb2AMUWsMPuQu1dmKHarF4jA6g52mKKGSoVekp

Note, if you scale with the axis handles, stay in Object Mode.

How I understand this question:
A given Matrix should be applied to the Matrix of Object A (sphere) to offset Object B (Cube). I have used a Null object for the “Constant” as it produces a Matrix directly with the measurements of the difference to the World origin point, so easy to adjust. The Offset is for distance.

Since I’m answering in a forum with a wide variety of knowledge, I have to explain it this way. A matrix is a 12 value combination. It is the way 3D application store position and rotation as well as scale. Position, Rotation, and Scale are stored in four groups of each time, three vectors (V0, V1, V2, V3). There is no direct rotation nor scale. All we see is just three vectors. But where it sits in space is the first group of three vectors. Then each of the axis X, Y and Z has a set of three vectors on its own. To rotate or to scale an object requires to calculate all nine of those.

https://help.maxon.net/us/#5829

To your question: Each of the V1, V2, V3, (not V0), in other words, all nine of them needed to be multiplied with the “offset-nine” and put back together again (too much work!). Or you can just clip out the Offset Value (V0) and use a Math node set to Multiply and Matrix. The feed it to the target object.

The Set up above can be grouped into an XGroup, ports can be renamed, and then stored in the XPool (see image)

All the best

P.S.: more in-depth about all of that is given in the Book, Mathematics for Computer Graphics, by Joh Vince. Which I think should be in every 3D artist’s shelf.

P.S.2:  In the XPresso Editor, go to the X-Pool, then to System Presets: Matrix. No Scale, but perhaps something you like to know anyway.

 Signature 

Dr. Sassi V. Sassmannshausen Ph.D.
Cinema 4D Mentor since 2004
Maxon Master Trainer, VES, DCS

Photography For C4D Artists: 200 Free Tutorials.
https://www.youtube.com/user/DrSassiLA/playlists

NEW:

NEW: Cineversity [CV4]

Profile