Jump to content

Search the Community

Showing results for tags 'rotation'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • General
    • Lounge/General chat
    • Education
    • Jobs
    • Marketplace
  • Houdini
    • General Houdini Questions
    • Effects
    • Modeling
    • Animation & Rigging
    • Lighting & Rendering
    • Compositing
    • Games
    • Tools (HDA's etc.)
  • Coders Corner
    • HDK : Houdini Development Kit
    • Scripting
    • Shaders
  • Art and Challenges
    • Finished Work
    • Work in Progress
    • VFX Challenge
    • Effects Challenge Archive
  • Systems and Other Applications
    • Other 3d Packages
    • Operating Systems
    • Hardware
    • Pipeline
  • od|force
    • Feedback, Suggestions, Bugs

Found 32 results

  1. I'm trying to create a pipe HDA for Unreal Engine 4 that either calls upon a straight piece or a corner piece and then orients each piece accordingly. I feel like I'm going about it all wrong, but the result I have is so close! As you can see in the first picture, it's KIND OF working, but I think it might fall apart very easily. I've attached a hip file any help would be greatly appreciated. pipeorient.hip
  2. Deforming constraints problem?

    hello guys. ive been bashing my head against the wall and read through way too many forums now. but i couldnt find something similar to my problem. Im trying to create for now a simple setup is to just break my glue constraints. The ball and colliding objects both have animation ( deforming). Now i do realize that my constraints get reconstrainted because of Overwrite with SOP option set to 1. however if i were to set it to 0 to only bring in the constraints on the first frame for the constraints to stay broken, the constraints would not be able to follow according to the animation of the ball, because it is rotating and changing position, leaving it very innacurate. So could anyone help me troubleshoot this? i think i have to somehow update the position and rotation of the constraints but i dont know how. I would provide a scene but it my scene is for a job. ive already tried matching position but there is rotation as well on the sphere, the resulting collision looks inaccurate as if its offseted broken_setup.mov broken_setup_position.mov
  3. Hi there! I made a simple rotation in Houdini in OBJ level and exported it via File/Export as FBX file to import into UE4. The object is rotation 300° over 96 frames. When I import then FBX into UE4 everything looks fine, but the object only rotates for about 60°? The same FBX works fine when I test it in Unity. Is there something I'm missing? Import settings in UE4 look fine - how can it be that the object doesn't do the full rotation? The imported frames are 96 as well - so that's fine. Easy in/out looks correct as well. It just doesn't rotate the full 300° but about 60°. Thanks in advance! Best, Ron
  4. Hi everyone! I made an HDA that generates a level. Got a couple of blueprints in Unreal I need to spawn. This works fine when I use the unreal_instance as point-attribute with the spawn-points. Since I want to rotate the blueprints instances as well, i added a rot point-attribute (also tested with orient) to the points - but this doesn't seem to carry over. Works fine inside Houdini when I test it with proxy geo (e.g. boxes) Every instance of the blueprint Unreal though has the same rotation. Am I doing something wrong here? best, Ron
  5. Hi everyone. I have a RBD sim that falling some geo's. And I wanted to copy some geo's to their centers. But theese geo's has no rotation data. How can I copy the rotation data of sim ? I tried to tranfer orient and w attributes and it doesnt work as well.
  6. Hi there. I am struggling with setting up the following: I have 2 points and I need to create a position/rotation vector from them to attach a new geometry onto the vector. I have got to the point where I have the new object aligned with the vector and I get a correct position and rotation, however I also get a random rotation along the object's own axis. (in an attached file it's the tube which is randomly rotating around it's own X axis. Any help would be appreciated, see the attached set up in the file. Many thanks! Adrianna vector_01.hipnc
  7. Hi everyone! I need to do a local rotation using an Attribute VOP for individual points of a grid and just can't get my head around this... If I e.g. rotate along the Z-axis and THEN rotate along the Y-axis it again rotates over the world's Y - not the shifted local Y-axis with a new orientation after i rotated over Z. What I basically need is taking the newly oriented "local" axis into account - the Y-axis should always point upwards from the upside of a cube. No matter how the cube is oriented. I hope you guys know what I mean... i attached an image to clarify. Also I attached a very simple example with 3 Attribute VOPs for rotation over each axis. No matter how the cube is oriented, it always rotates over world-axis. Maybe somebody can point me in the right direction? testrotation.hiplc
  8. Lately I have been trying to wrap my head around transforming point positions with the use of matrices in VOPs. To do that, I tried the following: Lets assume I have 3 points with their position vectors A, B and C which come from an alembic and are constantly changing values. I use a time shift and set it to $F + 1, and extract the same points position vectors, which are now called D, E, F. Then I set A,B and C into a 3x3 matrix, transposing it (to get the vectors in columns instead of rows) and do the same with D, E, F. After all this, I multiplied the inverse of the matrix containing ABC with the one containing DEF (this was not inverted). The resulting matrix was multiplied with new Position inputs, but the resulting transformations didn't match the original ones... What am I doing wrong? Thank you.
  9. hi all i'm trying to add a way to rotate each of my pieces of my burger randomly - but i cannot suss it for love nor money can anyone help please? @mestela - i found a simple wrangle from you to shift all the pieces upwards (burger exported from maya!) ... now i just want to add a little rotation but i cant figure this out tried primitive wrangles and pasting expressions into transform nodes - no idea
  10. Hello ! I'm trying to get an animation transfer from packed geometry to bone to work. It works when transferring the animation to a geometry (there is no visible problem in the viewport), but in the Animation Editor, the keys are not very clean. See below Here is the nice and tidy one, the source : Here is the result from the script, the baked one : As I said, in the viewport it works, but these keys are not very clean. Why do they look like that ? How to make them cleaner ? (See script and scene below) BUT ! What I really want is to bake the animation on a bone, not on a box. The previous problem still apply to this situation. The position works, but the rotation just fails miserably (with the same code !). The very same rotation is applied to the bone as the previous one that was applied to the test box, but the result in the viewport is not the same at all. The red is the source and the blue is the skinned box (to the visible bone). Why is that ? What am I missing ? Here's the code : node = hou.pwd() obj = hou.node("/obj") def extractEulerRotates(self, rotate_order="xyz"): # Thanks to the Houdini help page for that. But there is a problem here though return hou.Matrix4(self.extractRotationMatrix3()).explode(rotate_order=rotate_order)["rotate"] # The extracted rotation from this function is incorrect. def bakePackedAnim(): # Saving out some time-related variables intialFrame = hou.intFrame() startFrame = int(hou.hscriptExpression("$RFSTART")) # Don't know how to do it in Python endFrame = int(hou.hscriptExpression("$RFEND")) # Don't know how to do it in Python hou.setFrame(startFrame) # ''' # Initial setup : Creates a bone and a box, and then skins the box to the bone with a Capture Proximity. theBone = obj.createNode("bone", "tranformed_bone") # Create only one bone. Would put it in a loop to create multiple. # theBone.moveToGoodPosition() # Easier to work without it. Will uncomment in the end # TO REMOVE... But weirdly with -not a bone- it's working. Hmmm. testGeo = obj.createNode("geo", "test_geo") fileNode = testGeo.allSubChildren()[0] testTransform = testGeo.createNode("xform") testTransform.setFirstInput(fileNode) testTransform.moveToGoodPosition() testTransform.setDisplayFlag(True) testTransform.setRenderFlag(True) # Remove up to here skinnedGeo = obj.createNode("geo", "skinned_geo") # skinnedGeo.moveToGoodPosition() # Easier to work without it. Will uncomment in the end skinnedGeo.deleteItems(skinnedGeo.allSubChildren()) # Removes the file node boxNode = skinnedGeo.createNode("box") captureProximNode = skinnedGeo.createNode("captureproximity") captureProximNode.setFirstInput(boxNode) captureProximNode.moveToGoodPosition() captureProximNode.parm("rootpath").set(str(theBone.path())) deformNode = skinnedGeo.createNode("deform") deformNode.setFirstInput(captureProximNode) deformNode.moveToGoodPosition() #deformNode.setDisplayFlag(True) #deformNode.setRenderFlag(True) # Applying some color to the skinned box attribWrangle = skinnedGeo.createNode("attribwrangle", "color") attribWrangle.setFirstInput(deformNode) attribWrangle.parm("snippet").set("@Cd = {0,0,1};") attribWrangle.moveToGoodPosition() attribWrangle.setDisplayFlag(True) attribWrangle.setRenderFlag(True) # ''' # Transfers the animation from the specified geometry to the bone workingNode = hou.node("/obj/animated_box/OUT_script").geometry() # Gets the geometry of my test scenario for i in xrange(startFrame, endFrame+1): # For some reasons, xrange goes from the correct start value to the end value, minus 1. Strange. hou.setFrame(i) theFullTransform = workingNode.prims()[0].fullTransform() thePosition = workingNode.points()[0].attribValue("P") # This code works only for one object. Would do a loop here through all the pack geo. theRotation = extractEulerRotates(theFullTransform) # Got a problem with how this function extracts the rotation # Position key = hou.Keyframe(thePosition[0]) theBone.parm("tx").setKeyframe(key) testTransform.parm("tx").setKeyframe(key) key = hou.Keyframe(thePosition[1]) theBone.parm("ty").setKeyframe(key) testTransform.parm("ty").setKeyframe(key) key = hou.Keyframe(thePosition[2]) theBone.parm("tz").setKeyframe(key) testTransform.parm("tz").setKeyframe(key) # Rotation key = hou.Keyframe(theRotation[0]) theBone.parm("rx").setKeyframe(key) testTransform.parm("rx").setKeyframe(key) key = hou.Keyframe(theRotation[1]) theBone.parm("ry").setKeyframe(key) testTransform.parm("ry").setKeyframe(key) key = hou.Keyframe(theRotation[2]) theBone.parm("rz").setKeyframe(key) testTransform.parm("rz").setKeyframe(key) hou.setFrame(intialFrame) bakePackedAnim() # Would need to create a UI or a button for convenience, calling this out. And the scene : packed_anim_baker.hip Thanks ! EDIT : P.S. If I copy and paste relative reference from the source's rotation to the bone's rotation, the result is the same : obviously wrong rotation.
  11. Hello peeps, I'm trying to figure out something similar to some sort of ribbon setup in Houdini. Still, lots to do but right now I'm trying to work out rotations, I have twist working by itself such that if I twist the ribbon the bone rotates accordingly and bend working by itself as well, however, if I twist and bend the ribbon at the same time, the rotations become unstable. How can I fix this? Any help is much appreciated!!! Thanks. ribbon_setup_test_01.hip
  12. Good morning dear community As well as we can get a bbox boundaries and centroid using as well $CEX, $CEY, $CEZ or centroid expression, exist the possibility to get "pivot rotation" related to world space? Tried conversion of acos to degrees using dot from Normal Vector but without successfully results. Take in mind it came from point deformed animation with constant shape (Menas bbox remain constant during the whole length animation) Thank you very much
  13. Hello guys ! I need a little help. I have a curve and I am trying to get secondary curves around it. And finally to convert it to geometry with polywire. I don't want my curves to interpenetrate or to twist. I scatter points into a circle. I give an individual attribute to each point. I copy them to the points of the curve. I tried polyframe and vex code to keep the orientation of the points along the curve. I manage to get it but now I see that my secondary curves twist at some points. I think that I should use quaternion as orient before the copy but I don't know how to use it. For the moment, I've got this in my wrangle before the copy : v@N = v@N ; vector tangentu = v@tangentu; vector up = set(0,1,0); vector side = cross(tangentu, up) ; v@up = side; v@side = side ; v@N = tangentu ; // p@orient = set(@tangentu.x, @tangentu.y , @tangentu.z, radians(90) ); At the end, I will use a polywire (and I don't want them to twist around my main curve). Do you have some ideas of how I can do this ? I join the scene to explain. epe_copyWithRotationAlongCurve.hipnc
  14. Hey guys, new here, nice to meet y'all! I'm new to Houdini and have been dabbling with VEX recently. It's a love hate thing. Being interested in social insects I got the idea to build a little "ant robot" that could follow a trail. It has a body (point) and three points that serve as sensors. These sensors sample the ground's trail attribute (red, works), compare their values, find the "winner" (works) and then the whole thing should rotate accordingly and move along a vector that goes from the body to the best sensor point to stay on track. (Works not so well). That's the status and at least it's doing some following the path, but I can't get the robot thing to rotate around a custom position. Instead, the matrix rotation always uses the world origin as a pivot which looks increasingly bad with distance and at a certain stage just breaks. Also, the body promptly severs itself from the rest, which is a tad unfortunate, as I wanted it to follow the sensors (stay attached) and serve as a the pivot for the rotate(). I know this is a little messy but maybe one of you would like to have a look at the hip and point me to the obvious mistakes I made. Much appreciated! Cheers, Felix Robot_movement_issue.hiplc
  15. Hi everyone, I'm trying to create a delay effector style effect on some copied boxes, but I've chosen the option to pack primitives before copying and now in CHOPS I want to know how to make say a Spring CHOP pick up the rotation of a packed prim. Here is an example scene file below. Thanks to anyone who can help. C4D_mograph_rebuilding_01.hip
  16. I have a popnet creating some particles with the POP spin, to have a random rotation in each particle, also Im copying a tube in each particle, the tube rotates as it supposed to, but when they hit the ground, the tubes stays with a random rotation as well instead of pointing Y. I'm thinking that if I use the normals instead of the POP spin I could blend between the N0 and N1 when the particle hit the ground, using the hit info from the POPnet, but truthfully I don't know how to achieve this .-. I'm using POPs and copy the tubes/coins to the particles because the particles born magicaly from the floor after a character hit the floor with his cane. If anyone could help me or have any idea I would appreciate it!!!
  17. VDB rotation using VEX

    Hello everyone. Got a question about vex rotation for VDB objects. I've got a FLIP setup in which there is a model of a ship moving forward and rotating slightly. I created rotation control using VEX code. Very simple version of it looks like this: //Rotate object along X axis; this is just for an example matrix3 m = ident(); float angle_x = radians(ch('Angle')); rotate (m, angle_x, {1, 0, 0} ); @P *= m; This works for regular objects just fine. However, I want to use VDB version of the ship for collisions. When I apply this code to VDB object it doesn't work. I need VDB object to move and rotate as the original model exactly. So the question is - How can I transform this code or write a new one to rotate VDB object exactly as regular model?
  18. matrix rotation issue

    Hi, I am trying to give little banking in my flying object.......so i have created a 3 by 3 matrix,gave an angle and an axis in the direction of velocity....and then used it in vex as a rotate matrix.... vector axis = normalize(@v); vector matx = cross(axis, {0,-1,0}); vector maty = cross(axis, matx); matrix3 m = set(normalize(matx),axis,normalize(maty)); float angle = fit(sin(@Time * 0.5 + fit(random(@ptnum),0,1,0,360)),-1,1,-45,45); @angle = radians(@angle); rotate (m, @angle, axis); @orient = quaternion(m); i want to know is there any way to print the value of rotate matrix?? i did the same thing in vop sop and its working but here i face some issue. what's wrong i didn't understand.
  19. Hi guys, I've been giving VEX a go recently and I've hit a block in something I'm trying to achieve. I'd like to take a set of points from a scatter node and wobble or wiggle each of them randomly on a given axis (Y) over time. As an expression this is as easy as sin(time * #) in the rotation transform for a desired axis. This doesn't work in VEX as everyone knows. I did find a lot of reference on matrix and quaternion functions in VEX and this seems like the way it should be done. It looks pretty complicated though for something as simple as wobbling a point on an axis. I know VEX works with radians only. Anyway, I'm sort of stuck. Any help would be appreciated. Thank you!
  20. Copying Constraints?

    I am super stuck on trying to create constraints across multiple copied geometry. I attached my file to make more sense of it. If you open the DOP Network you can see that from left to right I have a position constraint>rotation>rotation. However, I'm confused on why the second rotation constraint isn't connecting to the 1st. It acts as if it's just a position constraint with a rotation constraint on it. Hopefully my file explains more. It's kind of a mess because I tried to copy the constraints across instead of making a new line each time. Trying to learn the most basic form of using constraints so any help is much appreciated. constraint.hipnc
  21. RBD stylish collapse

    Hi guys I'm trying to simulate two tall buildings destruction like the attached image. So I fractured my entire blue building and the wing of the red building and I made a lot of constraints with different strength and break forces. The plan is to make it stylish that the blue building collapse as height of the green rectangle and the wings of the two buildings fracture apart and few pieces in entire buildings. But in all different situation that I tried, the blue building starts to rotate counterclockwise after colliding with the red wing. So do you guys know how should I approach this problem? Thank you in advance
  22. Hi, I'm trying to do a simple A to B transformation like this from Rohan Dalvi .But I wanted to do more so I want the object to mach perfectly. I separated it in chucks using voronoy and packed it using assemble sop. I did the animation I want but I when I copy back to chunks I don't get the rotation of the points. When I do it with copy sop it works fine. I will send you this file with a demonstration. MORPH_POINT_POS.hiplc
  23. I was testing to transfer particles from Houdini to Maya,i use Cortex plugin to go into Maya,since Maya default importer sucks like 3dsmax roadmap So i was triying to get rotations, so far i cant get to work. Anyone tried this? Thanks
  24. Hi guys, I found 2 ways to export points in maya using RF plugin and otl. https://www.sidefx.com/index.php?option=com_forum&Itemid=172&page=viewtopic&p=141806 Maya reads particles, but I can't force them to rotate. I Created rotationPP attribute in maya and assigned different vectors, for example: particleShape1.rotationPP = particleShape1.rfNormalVector but each of them doesn't look like if I use copy sop in houdini. any Ideas?
  25. Hi guys. I'm trying to get point rotation around local axis (around local Y axis) I need to export points in Maya later, so I can't use copy sop for stamping. If I use transorm sop with Copy Stamping I can rotate Objects along local axis, but if I'm trying to edit rot and orient point attributes points are rotating in worldspace (around world XYZ) not along local axis. If I use orient attribute points are aranged in worlspase, not along normal. Can sombody help with that, please? ps I found Make Instance Transofm Vex node, but 'Ive got no Idea how to use it >__> point_rotation_001.hip
×