phyllotaxis and plants in Houdini– How to?

   7273   5   1
User Avatar
Member
5 posts
Joined: Oct. 2010
Offline
I got into Houdini through some remarkable images [forums.cgsociety.org] posted by Arkadiusz Rekita in the CGSociety.org gallery. As a lifelong poly-modeler, it rocked my world to think that this kind of thing could be done procedurally…

I read his ‘making of’ tutorial [ptakun.tmdag.com], and though it had some very interesting in-progress images, and some notes about the theory behind what he did, it contained no specific information. Plus, his screenshots show and he describes functions of tools in Houdini that I can’t find! I’ve been messing around with the program for a while now, and though I’ve begun to get a sense of the procedural way of doing things, I’ve had no luck at all finding the objects or systems that he’s using. In nearly all the screenshots, it’s an L-System that’s being used, but with adjustable parameters that don't exist in any version of Houdini I've seen.

So, let me be blunt: what Arkadiusz has done is exactly that effect I want to be able to achieve. How did he do it? Are these custom tools, or are they available as part of Houdini, or up for purchase separately? Through all my internet searches, I've been able to uncover no information.

Thank you all for your help!
User Avatar
Member
175 posts
Joined: July 2005
Offline
Hi LitoNico,

What Arkadiusz has done is a great piece of work.
The tools you need to create similar imagery can be built in houdini, you don't need any other software, only talent and hard work

If you'd like to do such simulation stuff you really should get into SOP Solver.
If I'm not wrong Peter Claes posted a very nice hip file with fighting particles some time ago.
Perhaps somebody has a link?

L Systems are a great building block, e.g. to achieve phylotaxis distribution just put A in premise and A(i)=F(i)+(137.5)A(i+0.1) into rule of Lsys SOP.
Also pull generations way up to a 100 or more.

You can build everything in houdini but with this power there come a noisy learning curve. Hopefully there are plenty of good tuts today.
User Avatar
Member
2624 posts
Joined: Aug. 2006
Offline
Cmi vfx have 2 dvds on L systems , they should give you some pointers.

Rob
Gone fishing
User Avatar
Member
31 posts
Joined: Jan. 2007
Offline
Bear in mind that when you're seeing nodes with parameters that are seemingly unavailable in Houdini, it's most likely because ptakun built a whole whack of digital assets to facilitate his incredible creations.

On a side note, I came to Houdini with an interest in proceduralism and L-systems, so discovering ptakun's work was one of my big inspirations for wanting to learn the software. Almost four years on, and it's still one of the best examples of the power of Houdini's approach.
Facebook [facebook.com] | Twitter [twitter.com] | Google+ [plus.google.com]
User Avatar
Member
5 posts
Joined: Oct. 2010
Offline
peliosis, thanks– I found the file you're talking about, and I've begun to explore the SOP solver a little deeper. Also, though I still need some work understanding L-System syntax, I think I get where you got your equation.

A(i)=F(i)+(137.5)A(i+0.1) makes sense to me (where 137.5=360(1-φ)), but why does just A work in premise? Do you not need A(value)?

Okay, question for Darric:
So those custom nodes would have been built in Python, or does Houdini provide its own language (mel-like?) for doing such things?

Thank you all so much for your help!
User Avatar
Member
175 posts
Joined: July 2005
Offline
For l-systems, the documentation is very good and clears most of things.

Premise is just what is generated from the start. Putting there a variable like “A” ensures you that there is no geometry before 1st generation.
Each generation step the l-sys runs through the rules.
At first it reads the premise “A”, but doesn't know what it is (unlike built in variables like F f etc.).Then is reads the rules and produce A from them.
You can put any global variables into premise and geometry is immediately built (in generation 0).

If you like to dig in the l-systems subjects, there is a great site : http://algorithmicbotany.org/papers/#abop [algorithmicbotany.org]
The biggest publication about l-systems is “Algorithmic beauty of plants”.

About scripting in houdini…There is VEX - SIMD language very similar to rsl, with C-like syntax. It's very fast, and you can write (or place VOPS) your own operators with it. All mantra shaders are vex, you can write geometry operators, image operators etc.)
Python is houdini scripting language, like MEL. It replaces Hscript. With python you can script any aspect of the software, it has functions for wrapping HScript and VEX and C++(!).

Also I strongly recommend you to read the docs, they are great and better with every update.

One thing concerning houdini speed. You can read everywhere how slow houdini is. It's not the entire truth, houdini can have slow viewports, character rigs are not that snappy, DOPS, POPS blah blah. BUT in case of many geometry operations, houdini is truly fast. Let's make a 100X100 grid, put polyExtrude SOP and inset the polygons…now do that in 3dsmax…
  • Quick Links