Jump to content

maansrune

Members
  • Content count

    7
  • Donations

    0.00 CAD 
  • Joined

  • Last visited

Community Reputation

0 Neutral

About maansrune

  • Rank
    Peon
  • Birthday 10/25/1983

Contact Methods

  • Website URL
    www.maans.org

Personal Information

  • Name
    Rune Mansson
  • Location
    Los Angeles
  • Interests
    VFX, Space, SciFi, Science and cat memes

Recent Profile Visitors

917 profile views
  1. detecting keyframes with pyton

    Hi Guys I have a very specific request from an animator working in houdini. He wants to have all his animation curves on the objects being animated, he doesn't want to be worrying on parenting or constraints. Right now I have a working tool which it is looking at the values of a source object and keying them to the same parameters on a target object. No problem. But if I wanted to minimize the amount of key frames being created, how would I do that? I can't seem to find a python function for "if key frame present, then..." So my question is, is there a way in Python to detect key frames and execute a function only when one is detected? Any help would be appreciated.
  2. I tried, it didn't seem to work, but if you have experience with it working I might have done something wrong. Thanks man, appreciated
  3. SOLVED. I found the expression I was looking for: `pointlist("../OUT_CLOTH", "neck_grp")` It only required that the initial group was created with a selection of point rather than primitives. Is there a way to convert a group entity after the fact? Like from primitives to points?
  4. Hey guys I'm playing around with some cloth and I'm wondering if there is a way to add an expression to the "Constrained points" of "Cloth Attach Constraint" node? I have a selection of points in a group all ready, is there anyway I can read the content of this group inside the DOP network? An expression? point(something something)? All ideas are welcome. I'm just really tired of manually selecting each point every time the freaking model updates. Cheers! EDIT: Or a way to use a loop selection tools when the "Attach to Body" shelf tool prompts you to select points to attach. SHIFT+A+MMB doesn't work.
  5. Closest point along surface, not volume

    Thanks for your help guys Just what I was looking for
  6. Closest point along surface, not volume

    Hey Jens. Thank you for your quick reply. The solution you proposed seemed solid, but it's not working. This is the process of creating the planes (can't share images or the file sadly, so I'll have to describe as best as I can): Point are scattered on static mesh PRIMUV attribute is interpolated onto scattered points from static mesh Points get animation applied, interpolated onto them from animated mesh via PRIMUV and a FLOW attribute Planes are created from points. The planes inherent the animation, but stick out at angles matching the FLOW attribute To flatten down the planes, the Point Wrangle node from above is used. Animated planes (Opinput1) are matched to closest surface on animated mesh (Opinput2), which they closely match already. This approach however, generates the artefacts where planes are attracted to any surface that is nearest. Hand comes close to face and planes on face stretch toward hand instead of face. So when I used the script above, I assume the XYZDIST function gets confused because the distance between animated model and the static model is too great (Static model is placed a 0,0,0, animated model is somewhere else in world space), and the planes are distributed somewhere between the two models. Is there no way to force the XYZDIST to only look along a given connected surface and not a spherical field? Or some other function that will do something similar? Hope this made any sense at all. Otherwise I guess I'll have to live with the artefacts for now.
  7. Hey guys, first time posting here. Hope you can help me, I'm a VEX noob, but I want to learn. I'm have created planes from point scattered across a character. I now want these planes to neatly wrap to original mesh. For that I use the below VEX in a VEX point wrangle node. And it works.. but... int prim; vector primuv; // Find distance to nearest point of geometry from input 2 vector dist = xyzdist(@OpInput2, @P, prim, primuv, 1000000000000); vector adata = primuv(@OpInput2, "P", prim, primuv); vector diff = (@P - adata)*fit01(@leaf_splat_paint,3,1); // Subtract distance from original position vector product = diff * ch("splatMult"); // Add multiplier to SPLAT effect vector sum = product + adata; // Add the new point position to the product @P = sum; // Make sum new position My problem is that whenever the characters legs cross close to one another, the planes of one leg try to align with the opposite leg, creating a jittering stretching effect that is not desirable. This is also true if the arms comes close to the face or the torso. My question is, what do I need to add to the VEX code to search for closest point along surface and not within volume of space? Any help is appreciated. This forum has been a god sent in the past for me, you guys have helped me out of more trouble than I care to admit Cheers
×