Jump to content


  • Content count

  • Joined

  • Last visited

Community Reputation

5 Neutral

About Aeoll

  • Rank

Contact Methods

  • Website URL

Personal Information

  • Name
  • Location

Recent Profile Visitors

946 profile views
  1. Wedging / HWatermark

    I've contacted SideFX and they have confirmed that 1) is a bug which will be fixed in the next major release. I'm waiting on a working fix for 2) but they have confirmed that the script in the help docs is outdated. Edit: 2) Is definitely also a bug and SideFX are currently looking into it.
  2. Ah yes I do. It works with no pinning. Is it possible to get the code to work with this workspace setup - 2 panes pinned to (1) and 2 pinned to (2)?
  3. I've been working with the Wedge ROP to output some opengl pyro renders. 1) When the Output Driver is referenced using the param the Wedge renders this driver and its dependencies correctly. When I plug the Output Driver directly into the first input of the Wedge ROP and render it never stops! The Wedge loops back to the beginning and starts writing over files which have already been rendered. Is this a bug?? 2) I can't get watermarking to work. The Help docs for Wedge provide a sample script {{{unix hwatermark -x 4 10 -m "$WEDGE" chs("vm_picture") chs("vm_picture") $HFS/houdini/fonts_texture/Fixed-Bold.24}}}. Some googling has revealed that this syntax is no longer valid but I've been unable to get any other versions working at all Any help is appreciated!
  4. Hi, I'm writing a few shelf tools with hotkey links to allow quick creation of some common nodes (Null (N), Wrangle (W) etc) Here is the simple script if(len(hou.selectedNodes()) > 0): node = hou.selectedNodes()[0] if(node.type().category() == hou.sopNodeTypeCategory()): parent = node.parent() null = parent.createNode("null") null.setNextInput(node) null.moveToGoodPosition(True, False, True, True) null.setSelected(True, True, False) null.setCurrent(True) null.setDisplayFlag(True) Although the new Null is selected and display-flagged correctly, the parameter pane remains on the previously selected node. The outline colour of the null is also yellow rather than orange. Is the a way to fix this?
  5. What's wrong with a for-loop? It's quick and readable. You could do this but it's a lot uglier int pts[] = sort(nearpoints(0, 0, 1e10));
  6. The time dependency is lost when HScript is backticked into a wrangle so this won't work for an animated channel?
  7. I had this issue a couple of days ago and was intending to post the same question. @Atom Can the parameter creation can be skipped so the chop is referenced directly in the wrangle? That's the question being asked here.
  8. I've attached a file showing the basic sweep ramp and some variation at rope ends. You could create this variation with a ramped twist or roll instead. I can't resist some Vex though The Sweep SOP in qLib has this plus many other features built-in - https://github.com/qLab/qLib cord_rope_ends_TWEAK.hipnc
  9. Crowd Queries

    Hi, I have a couple of questions on crowds 1) Is it possible to set the viewport colour of agents without unpacking the sim? At the moment setting Cd will change the colour of the circle beneath it's feet, but this can be difficult to see in large crowds. Unpacking works but this is very slow. 2) Is there a way to implement ‘ragdoll recovery’ as shown here for golaem? http://golaem.com/content/doc/golaem-crowd-documentation/ragdoll-recovering-animation [golaem.com] Currently setting a crowd trigger & transition from ‘ragdoll’ to an animated state has no effect and the agent stays in the ragdoll state permanently? 3) Is it possible to set a per-agent avoidance forces/weights so that some agents groups avoid other agents aggressively while others do not try to avoid at all? 4) Varying the agent scale (pscale) seems to affect the speed at which agents move? Why does this happen and how can it be prevented? Thanks
  10. Particle Velocity Grid Advection

    I find it much easier to do angular constraints with polar coordinates. Try replacing the code in your wrangle with this: vector toPolar(vector v) { float r = length(v); float th = acos(v.z/r); float phi = atan2(v.y, v.x); vector a = set(r,th,phi); return a; } vector toCartesian(vector v) { float x=v.x*sin(v.y)*cos(v.z); float y=v.x*sin(v.y)*sin(v.z); float z=v.x*cos(v.y); vector a = set(x,y,z); return a; } vector a = toPolar(v@padd); float ang = radians(90); // constraint angle. Could use different values for theta and phi a.y = ang*floor(a.y/ang); // theta a.z = ang*floor(a.z/ang); // phi a.x = 1; // comment out to keep velocity field magnitude v@padd = toCartesian(a); @P += (v@padd* @TimeInc); This will constrain theta and phi to 90 degree angles, but it will work just as well for any angle.
  11. I'm trying to use the polysplit tool procedurally by storing a series of split locations in a string attribute and then referencing this value with an expression (with backticks). However this throws errors and won't seem to work at all. Has anyone had success with doing this before?