Akabane Posted April 13, 2010 Share Posted April 13, 2010 Hi there, maya user and houdini newb here! I'm trying to get my feet wet with houdini fx. I'm trying to do a growing mineral through a field (plain terrain for now). I created a spline and animated that through its transform node, so that it sweeps through the terrain. Then created a popnet, objectMerging the transform node as the source of the particles, so good so far for now. Then i created the mineral in another object node, using a foreach node, extrusions, clips and so on, just to learn how to use those. In the mineral node, after the foreach sop, i attached a polyextrude node to make it "grow". The polyextrude Z value is stationary for now (ie: 1) Then i went into the particles geonode, objmerged the mineral, and added a copysop to copy the minerals to every particle, and also for now, all is good. Now it comes make the minerals grow. To start with, i took out the extrude node in the mineral object node and put it after the mineral objmerge, just for practicity. Then i went and typed "clamp($FF*0.1,0,20)" in the extrude value to have it grow in time without "overgrowing" due to the $FF value. It actually grows, but of course, as the extrude increases in time, also the new copies spawned at new particles have the same extrusion as the previous ones. This is what i want to avoid, so i thought using the stamping technique to see if i could make those grow. As a starting point, i put into a new stamp attribute the value of $PT, and stamped that into the extrude; this way, as new particles are spawned, the new minerals are extruded more and more, but it doesn't give the impression of growth, first because it is reverse growing (the older particles are smaller lol), and because it doesn't actually grow in time. Is there a way i can procedurally animate the extrude to make those minerals grow with copystamping? Or i have to use, dunno, a foreach? Of course it would be easier to hand animate a couple of growth cycles then use those, but i'd like to learn, more than using "raw working" techniques. For that, i use maya Thanks all Akabane Quote Link to comment Share on other sites More sharing options...
anim Posted April 13, 2010 Share Posted April 13, 2010 (edited) leave your extrusion expression as it was clamp($FF*0.1,0,20) or just $FF or animate it with keyframes so you have total control over the growth then append timeshift SOP, uncheck Integer Frames then control Frame parameter with stamp() expression ideally based on age attribute of your particles you can use clamp() here or when creating your stamp variable so no need to use clamp() in extrusion you can rather change timeshift behavior to By Time and control Time parameter with particle age since they both are in seconds Edited April 13, 2010 by anim Quote Link to comment Share on other sites More sharing options...
Akabane Posted April 13, 2010 Author Share Posted April 13, 2010 (edited) Thanks for the fast reply. I created another stamp attribute, named "age" and with $LIFE as the value, then fed it into the Time param of the Timeshift, but nothing happens. I guess because $LIFE in the copysop doesn't change, it remains 0. Ideally i should read LIFE from every particle right? The copysop should do that automatically or not? My network is like this btw: OBJMERGE (mineral)........... OBJMERGE(emitter) -polyextrude.....................-popnet --timeshift........................--copysop(2nd input) ---copysop (1st input) This is right, yes? Because the timeshift should happen when the object is copied, right? Edited April 13, 2010 by Akabane Quote Link to comment Share on other sites More sharing options...
Akabane Posted April 13, 2010 Author Share Posted April 13, 2010 OMG sorry man, the LIFE value is really little so i didn't see changes, whereas multiplying it by a large number did the trick. Thanks a lot, having fun tweaking now Quote Link to comment Share on other sites More sharing options...
anim Posted April 13, 2010 Share Posted April 13, 2010 try $AGE instead of $LIFE, since $LIFE is already normalized to 0-1 along the particle life(and therefore very small), but $AGE will give its current age in seconds Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.