Jump to content

Rikrok

Members
  • Content count

    24
  • Donations

    0.00 CAD 
  • Joined

  • Last visited

Everything posted by Rikrok

  1. Is there any way for the ray sop to register a hit only on the front face of a primitive and pass through backfaces?
  2. How do you go about evening out the spacing between points on a mesh while preserving it's shape (like the relax tools in most other 3d packages)? The point relax SOP is not designed for meshes and produces ugly results if you try and use it.
  3. Execute render with python

    The issue is with the Filmbox ROP - if you tell it to write more than one frame it will under no circumstances write out multiple fbx's; it assumes you want one fbx with a cache. Therefore I need to set it to write one frame, render, change the frame, render, etc.
  4. I'm trying to write out multiple variations of the same object as fbx's (I have to use fbx), the object is set to change every frame. Unfortunately when you set a frame range on the the Filmbox FBX ROP you don't get multiple fbx's, you just get one with a point cache. I put a script on the object to change the start and end frame of the ROP to the current frame (which works), followed by hou.parm('/out/filmboxfbx1/execute').pressButton() Which when pressing play writes out a bunch of fbx's but unfortunately they're all empty; the script gives an infinite recursion in evaluation error. I then tried making a tool that runs a script for n in range (1, 101): hou.setFrame(n) hou.parm('/out/filmboxfbx1/execute').pressButton() This only writes out 1 frame. I even tried using threading and sleep incase it was because it was executing the render button too quickly, no dice. Does anyone know how I can achieve this?
  5. Execute render with python

    That's the first thing I did
  6. I'm having a hell of a time trying to do something I thought would be very straight forward. I want objects colliding with some objects but not others. I tried this technique method using collider label and no collider but it didn't work: From: https://www.sidefx.com/index.php?option=com_forum&Itemid=172&page=viewtopic&p=177142 collision_layer_fix.hip Download collision_layer_fix.hip https://www.sidefx.com/index2.php?option=com_forum&Itemid=172&page=download&id=20466 For me both balls just fall straight through the top grid (I'm using H15). Only one of them is supposed to go through. I can't use collisiongroup and collisionignore attributes as I'm not using packed objects. Can anyone help?
  7. I'm using clothCapture where the geometry to capture is changing over time. I want to create that clothCapture attribute at a specific time. I thought I could use a timeShift, do the clothCapture and then copy that attribute back to the original animated geometry. Unfortunately that doesn't work; it turns a 74f in a 2f. How do people get around this problem?
  8. clothCapture at fixed time

    Some floppy flesh
  9. clothCapture at fixed time

    Solved it by instead of trying to copy the clothCapture attribute copying P from the animated geometry to the frozen geometry with clothCapture.
  10. Ray SOP ignore backfaces

    That doesn't work (and I wouldn't expect it to, it's not how shooting multiple rays works).
  11. I have moving particles that leave a trail of static particles behind them. I need to stop a moving particle if it gets close to another's trail. I've tried using the proximity pop, so if a moving particle has any neighbours nearby it stops, but I can't see a way to not have it count particles that are in its own trail. I thought perhaps there'd be an attribute transfer pop for between particles (to see if there were any particles within a radius which had a different trail attribute, if there were then stop the particle) but I can't see a way to do that either. I hope someone can help!
  12. If you create an emitter (location/source) and append a kill, why do particles exist for an instant before being killed? Surely you should never see any at all? In case you're wondering why it matters- I need certain particles (A) to birth other particles ( B ) but ultimately have (A) deleted. I have geometry copied to them, and (A) annoyingly gets geometry copied to it for a frame before that kill takes it out. I'm getting around the problem by using an add sop to turn the particles into points and then deleting (A), but it seems a strange thing to have to do.
  13. Particle kill not instant

    Makes sense, thanks
  14. Particle kill not instant

    Thanks, though that's what I'm doing already. I'm just wondering why I need to, why the kill isn't instant.
  15. I'm trying to get scrolling text across various primitives. That in itself was ok, using the shader to reference the cop node op:/obj/geo1/cop2net1/font1 My problem is getting the text to say different things based on a primitive's attribute. In the font node I'm reading a text file, and I want to be able to control which line it reads. I have a primitive attribute ($LINE), but putting that in doesn't work. I also tried.. prim("../../randomnode",$PR,"line",0) which crashes Houdini (works if I replace $PR with a specific primitive number, but of course that's useless). So eventually I gave up and created multiple font nodes each manually set to read a different line (far from ideal as they'll need to be hundreds) with the idea that in the material I can read the line attribute and append that number to op:/obj/geo1/cop2net1/font Doing that within the material VEX builder doesn't work (mantra: Unable to load texture 'op:/obj/geo1/cop2net1/font1') Promoting the texture and putting this in doesn't work either op:/obj/geo1/cop2net1/font`prim("../../randomnode",$PR,"line",0)` Please help!
  16. Damn. So I've resigned myself to having the COPs write out loads of images, the problem is this will need to be done frequently with lots of nodes. To save clicking render 100 times every time the text needs to change I had the idea to merge all the font nodes and then write to exr using layers to store the planes. It works in that I can see all the different text in their own layers in Nuke, but is it possible to access exr layers in a shader?
  17. When I try to bring an abc into Maya from Houdini which has vertex colour information I get this error: // Error: Attribute clean1.Cd is not vector-valued. // // Error: TPSdatabase::createAddControlUI: could not create control for attribute Cd // Does anyone know how to do it?
  18. I have some primitives being moved with particles. The age is working fine within the pop network, but when I take it to scale the primitives things get messed up, even though the particle numbers mach the primitive numbers. If anyone would look at the file I'd really appreciate it!
  19. The problem is only some of the particles age (a group of them have their ageing suppressed), but when using the age out of the popnet to scale the primitives it's as if they're all ageing.
  20. So now I'm trying using this method: 1-point("../popnet1", $PT, "life", 0) However all the primitives are scaling down, even though some of their ages are actually staying at zero! I'm baffled. scalingPrimitivesWithParticleAge2.hip
  21. Doesn't work I'm afraid
  22. scalingPrimitivesWithParticleAge.hip
  23. I'm trying to get points put into a group based on whether they have been contained by another shape. The first part is fine, but once the shape has moved on they're no longer in that group- I need them to stay in it (remembering if they have been touched or not.) I tried creating an attribute with the idea to set a value for anything in the group, but of course once they leave the group that attribute reverts to the default value...
  24. Thanks very much, your example is doing exactly what I described. At the risk of sounding ungrateful/stupid, I'm just starting out with Houdini coming from Maya, and I must say I'm having trouble getting my head round some things (I've failed even with your scene to recreate it from scratch). Does it really have to be this complicated? In Maya I'd simply say, if (x==otherobject.x) $samex = 1; and bang, I've got a variable that tells me whether something was at the same coordinate as another.
×