YOUR ACCOUNT

Login or Register to post new topics or replies
ThreeDee
Lost in Space

Posts: 1672
Filters: 112
Working on a method of building trees, which seems to require quite a different approach from plain filtering and combination of noises.

Anyone have any experience or suggestions which way I might approach this task?

So far, I've attempted to grow a tree in a fractal fashion.

Apart from being painfully slow, the experiment started to have a life of its own, so I figured I'll throw a render in here -- this one I called Fractal Mystique. (Renders way too slow to become a usable filter yet, but maybe something will yet become of it.)

The main problem seems to be making the branching pattern, which is why I was going the fractal route. I had no luck with noises as I always got closed shapes (variations of tessalation -- sort of like a cracked earth pattern) when trying to make branches.

I'll keep at it, but if anyone has any suggestions, I'd love to hear them!

  Details E-Mail
Kraellin
Kraellin

Posts: 12749
Filters: 99
i like the render. but, a tree? uhm, maybe on some abstract plane, maybe smile;)

yeah, we've discussed fractal going all the way back to the beta days. so, the developers are certainly aware of the desire. as i recall from the beta days, and you can probably find an old thread about it here on the forums, it was put on the 'needed and wanted' list, but as a low priority.

as for making a tree filter with the current version, i think you're going to have to construct it in a more mundane manner by building the parts, trunk, one branch, another branch, leaves and then blend them in together like i did with my waterfall filter. branches and trunk shldnt be too hard; it's the leaves that are going to be tough, i would think.
If wishes were horses... there'd be a whole lot of horse crap to clean up!

Craig
  Details E-Mail
Carl
c r v a

Posts: 7289
Filters: 82
this might give you tree building idea fern
  Details E-Mail
creative.chaos
creative.chaos

Posts: 15
Filters: 13
I can offer no suggestions, but I can say that the render is stunning. smile:)
  Details E-Mail
StevieJ
Designer/Artist

Posts: 11264
Filters: 163
I would distort curve work for the trunk and primary branches......add bark texture.....use radial noise for the secondary branches.....and then splice in one of the foliage filters like the one Carl suggested..... smile:)
Steve

"Buzzards gotta eat...same as worms..." - Clint :)
  Details E-Mail
CFandM
ForgeSmith

Posts: 4761
Filters: 266
Quote
Kraellin wrote:
s for making a tree filter with the current version, i think you're going to have to construct it in a more mundane manner by building the parts, trunk, one branch, another branch, leaves and then blend them in together like i did with my waterfall filter. branches and trunk shldnt be too hard; it's the leaves that are going to be tough, i would think.


Not to mention real slow...The leaves are going to be the tricky part...unless you don't want a lot of detail in them....Especially if you are going for this type of look....WARNING...shameless plug ahead... smile;)
http://www.filterforge.com/filters/4806.html

Quote
ThreeDee wrote:
Apart from being painfully slow, the experiment started to have a life of its own, so I figured I'll throw a render in here -- this one I called Fractal Mystique. (Renders way too slow to become a usable filter yet, but maybe something will yet become of it.)


I have some in the library that are fractal-like but not really true...I also have some that are closer but are just waaaay to slow for human consumption...
Those I never submitted..

http://www.filterforge.com/filters/se...ractal&h=r

http://www.filterforge.com/forum/sear...FORUM_ID=0
Stupid things happen to computers for stupid reasons at stupid times!
  Details E-Mail
jffe
Posts: 2869
Filters: 90
Hmm, yeah, it doesn't really remind me of trees, cept maybe x-mas on acid in some Dr. Seuss nightmare flashback. But, it's looking pretty cool on it's own, just needs a little more tonal/light-dark balancing and it'd be a neat special effect swirly design maker. smile:)

jffe
Filter Forger
  Details E-Mail
Sphinx.
Filter Optimizer

Posts: 1750
Filters: 39
ThreeDee,

I see what you're going at here, I've been trying a similar "fractal" approach, but it is very hard since there are no recursion + evaluation components - basically what I wanted to create is some thing like this:



This is very easy to create with a few lines of code, but not so easy with the avail. palette of components.

I think the way to approach this would be to approximate a division curve which then is used to control subtiling, and then these tiles rotate for each "iteration" (in quotes because we have to unroll everything).

btw that pic looks cool!
  Details E-Mail
Kraellin
Kraellin

Posts: 12749
Filters: 99
yes, recursion is something i asked for a while back. that, plus some of the other requested items like bombers, would bring a whole extra world to FF.
If wishes were horses... there'd be a whole lot of horse crap to clean up!

Craig
  Details E-Mail
StevieJ
Designer/Artist

Posts: 11264
Filters: 163
Sphynx, what you have is exactly what I was talking about using to create the secondary branches.....so you don't notice the noise pattern so much....

I would do the trunk and an odd number of primary branches using curves.....run them through som distortion for an organic feel.....add the secondary noise branches.....add some bark texture.....then the leaves.....and voila.....an extremely slow filter..... smile:| ..... smile;) smile:)
Steve

"Buzzards gotta eat...same as worms..." - Clint :)
  Details E-Mail
ThreeDee
Lost in Space

Posts: 1672
Filters: 112
Hi guys and thanks for the ideas and suggestions. I've taken a look at all of them and the links, and I'm digesting the ideas.

Sphinx -- yes, that's exactly the approach I was looking at, I've certainly done it a few times with code, but it is a real challenge without recursion - and by the time you run the image through the same steps a few times; well, you get more coffee breaks than necessary.

May have to settle for something that appears right as opposed to is so.

Wonder if a suitable combination of kaleidoscopic images would get me close enough to a branch pattern...?

In the meanwhile, the development and experimentation did lead me to a pretty good leaf filter, which I submitted, but a whole tree is still quite a distance away. Here's a preview of the leaf:



Back at it.
  Details E-Mail
Kraellin
Kraellin

Posts: 12749
Filters: 99
yup, looks good smile:)
If wishes were horses... there'd be a whole lot of horse crap to clean up!

Craig
  Details E-Mail
ThreeDee
Lost in Space

Posts: 1672
Filters: 112
One step closer...

After some serious headaches, I got this far.

For this one, the trunk and the first two branches are built individually, the rest is created by splitting the branches at increasing distances from the first branch, four iterations in total. Leafs are just a noise pattern in the vicinity of the branch ends.

Unfortunately, it is mostly good for testing your CPU speed and your patience.

If I can figure out how to make it work at a usable speed, it could become something.



  Details E-Mail
Kraellin
Kraellin

Posts: 12749
Filters: 99
Quote
ThreeDee wrote:
Unfortunately, it is mostly good for testing your CPU speed and your patience.


hehehe, boy, does that sound familiar smile:D

i'd love to see the method you used for this so far. i've got a couple ideas, but no point re-inventing the wheel.
If wishes were horses... there'd be a whole lot of horse crap to clean up!

Craig
  Details E-Mail
Carl
c r v a

Posts: 7289
Filters: 82
Looks like your well on your way to getting it - rotated and fiddled with you might get a good fork lightening smile:)
  Details E-Mail
ThreeDee
Lost in Space

Posts: 1672
Filters: 112
Kraellin,

You can see from this work-in-progress version how it works (if you have enough time to wait for it...) This one is slightly improved in terms of results but not in terms of speed. Lotsa optimization to be done...

I can only imagine turning it into a surface filter! (My trial would probably run out before the next render was done.)

Tree test 9.ffxml
  Details E-Mail
Kraellin
Kraellin

Posts: 12749
Filters: 99
thanks, threedee. looking at it now. the first thing i can tell you is, turn off anti-aliasing smile:) that thing is just a weeeeee bit slow smile;)

i'd leave the noise for leaves right now.

i'm running a single core, 3.5 ghz machine and timing the render................ i'll get back to you in an hour or so smile;)

ok, with anti-aliasing turned off, 3 min, 27 seconds on my rig.
If wishes were horses... there'd be a whole lot of horse crap to clean up!

Craig
  Details E-Mail
Kraellin
Kraellin

Posts: 12749
Filters: 99
replace the chaffs near the results with a perlin.
If wishes were horses... there'd be a whole lot of horse crap to clean up!

Craig
  Details E-Mail
Kraellin
Kraellin

Posts: 12749
Filters: 99
on your 'spread' routine, you can lose 3 components there. just use an invert off the one profile gradient and plug that into the other offset on the profile gradient.
If wishes were horses... there'd be a whole lot of horse crap to clean up!

Craig
  Details E-Mail
Kraellin
Kraellin

Posts: 12749
Filters: 99
ok, forget that last one. i think i may have a better way.
If wishes were horses... there'd be a whole lot of horse crap to clean up!

Craig
  Details E-Mail
Kraellin
Kraellin

Posts: 12749
Filters: 99
lol. ok, i managed to shave off three seconds. smile:) yeah, not that much, but i did simplify the 'spread' routine and added a control to determine how high up the trunk the branches start.

i'm sure more can be done and i DO thank you for showing me this! i'm having fun with it and learning as i go. you've got some clever routines in there. i love how you managed the hood of the tree and leaves smile:)

i'll work on it some more. always interesting seeing what folks come up with and how they do it! i had tried a 'tree' quite a while back but didnt get anywhere, so this one is real interesting to me.

attached is my latest revision.

Tree test 9 rev 2a.ffxml
If wishes were horses... there'd be a whole lot of horse crap to clean up!

Craig
  Details E-Mail
Kraellin
Kraellin

Posts: 12749
Filters: 99
and i just couldnt resist taking it a bit further by adding some color. i plugged that into the perlin i added to replace your chaffs and then added a set alpha onto the threshhold following. fun stuff smile:)

of course, that added some extra time back, so i'm now back to 3 min, 28 seconds. lol.

If wishes were horses... there'd be a whole lot of horse crap to clean up!

Craig
  Details E-Mail
ThreeDee
Lost in Space

Posts: 1672
Filters: 112
Hi Kraellin,

Thanks for the feedback. I'll get back to this in a few days. In theory, the more tree you can build before running the "recursive fractal" passes, the better: might be able to get the rest of the tree done in 3 or even 2 iterations instead of four, which would affect the speed enormously. In essence, something along the line of building a single branch and replicating it all over the place with some distortion so it doesn't look like the same branch. The more you build the less need for fractalization. There's a happy medium somewhere there.

I started with something like 8 iterations from a single trunk; something to tell my grandchildren about (upon the completion of the render).
  Details E-Mail
ThreeDee
Lost in Space

Posts: 1672
Filters: 112
Also, the details (the smallest branches) can likely be done in a non-fractal manner with some noise -- a similar approach to the leaves but closer to the branches. Having a trunk with enough main branches that grow from it in a natural fashion already makes it look like a tree.
  Details E-Mail
ThreeDee
Lost in Space

Posts: 1672
Filters: 112
Hey, I think that might be the ticket: instead of branching out at the bottom with the two large limbs, could do the details at the end of the branches and fractalize down from there. I'll try it that way -- after a few other things.
  Details E-Mail
Kraellin
Kraellin

Posts: 12749
Filters: 99
well, i'm still trying to figure out your 'recursive fractal passes', so i'll take your word on it.

i was thinking you could replace some of that with shorter routines, like a frame set to a sphere and some profile gradients and curves, maybe... but that's just thunkin in my head.

and the way you used the offsets for more iterations... well, i guess that's part of the fractal passes, but that had me going loopy, too.

hmmm, working from the top down seems odd, but maybe. i like the way you did the two branches and trunk. i was thinking maybe just replicate that routine and adapt it for the smaller branches. if you can make two branches, then why not four or eight and then just resize them with one of the zoom snippets.

oh well, that's what makes this type of project fun, seeing what others do and playing on that and doing something else and so on and so forth. i'm gonna look at it some more.
If wishes were horses... there'd be a whole lot of horse crap to clean up!

Craig
  Details E-Mail
Kraellin
Kraellin

Posts: 12749
Filters: 99
ok, got it down to 29 seconds total rendering time, but it's added a number of anomolies, so i'm not gonna post the filter yet. i wanna see if i can work some of those out first.

basically, i threw out ALL of the fractal recursive stuff. that was slowing it down bigtime. btw, it wasnt really recursive, it was additive. FF cant do recursive.

if you take just the parts that make the branches and the canopy and work with that, i think you'll figure out a way to do this better and faster. i love your fractal type stuff, but it's slow. i think the canopy can be done with noise and the extra iteration of higher branches can be faked or faked by hiding all that in the canopy. it's not as elegant, by any means, but it's certainly faster smile:)

If wishes were horses... there'd be a whole lot of horse crap to clean up!

Craig
  Details E-Mail
ThreeDee
Lost in Space

Posts: 1672
Filters: 112
Hi Kraellin,

Got back onto this yesterday and decided to try and optimize the performance so that it would become usable. Your suggestions are most helpful and I have tried out your ideas and use some of them to make the filter run faster.

Yes, you're right, there's no recursive routine, just an attempt to simulate it. I finally figured out a way to split the branch in two directions at once, which took the time down to 1/8 of the previous. Also, I managed to make it so that you can offset the branches on the different sides, which made it look more natural.

I don't dare to put any fancy texturing into the filter as it is still a bit on the side of annoyingly slow (2 minutes with antialiasing on), but with a few more things I can do to simplify it I think it's going to work. Here are some of the latest renders from the simplified version:







  Details E-Mail
Kraellin
Kraellin

Posts: 12749
Filters: 99
Quote
ThreeDee wrote:
I finally figured out a way to split the branch in two directions at once, which took the time down to 1/8 of the previous.


oh, of course! ok. that shld help.

Quote
ThreeDee wrote:
Also, I managed to make it so that you can offset the branches on the different sides, which made it look more natural.


that must have been a bit tricky, getting things to line up with other branches. i would guess some mirroring might help in getting a fresh look also.

and looking at your renders, i now see how if you doubled or even quadrupled the trunk by using extra iterations, you could 'naturally' seem to split the trunk into branches as you moved up. in fact, you could even overlap a whole lot of multiples at the base of the tree and simply do the spread up higher to make the branching. very clever. i used the repeat slider in the early profile gradients to get some repitition, but your way is probably better as it will get more natural looking branching. too much symmetry in a tree makes it look unnatural.

i put this aside waiting for a reply from you, but i may look at it again now. always fun taking up 'how the hell do you do that?' type projects smile:)
If wishes were horses... there'd be a whole lot of horse crap to clean up!

Craig
  Details E-Mail
Carl
c r v a

Posts: 7289
Filters: 82
refracted wood texture around trunk and branches wood help with depth and stop the striped branches smile:)
  Details E-Mail
ThreeDee
Lost in Space

Posts: 1672
Filters: 112
Carl, thanks, yes I tried that idea, which looked good but again slowed down the render considerably, so I settled for a simpler solution.

Kraellin, that's a good idea on the doubling-up of the trunk for a more natural look; many trees indeed grow that way. Gotta try it. Of course, every extra iteration slows down the render by about 50%...

I did get the tree working the way I wanted it, so it is in the queue now; two versions thereof, one with leaves, one without (putting both in the same would have killed the speed improvements again). Here's a preview:

With leaves (the "summer" version).


And without (the "winter" version).



Well, it is also the last day of my FF trial, so I guess I'll be buying mine soon; there's no living without it now!
  Details E-Mail
Crapadilla
lvl 52 Filter Weaver and Official "Filter Forge Seer"

Posts: 4365
Filters: 65
Neat! smile:)
--- Crapadilla says: "Damn you, stupid redundant feature requests!" ;)
  Details E-Mail
Mousewrites
Not life size.

Posts: 192
Filters: 20
I like the shading you did on the branches. HUGE leap forward in realizm, there. I know it's slow for now, but someday a cast shadow would be nice for it, too.

(Unless your intent is to make things like sprites for 3d apps, which, of course, don't need the baked in shadow.)
  Details E-Mail
Carl
c r v a

Posts: 7289
Filters: 82
Bark works nicely, nice going smile:)
  Details E-Mail
Kraellin
Kraellin

Posts: 12749
Filters: 99
nice one, 3d! i like how you dappled the leaves a bit more, too. looking forward to seeing what you did.

and trust me, you wont need to buy FF. your filters are going to go HU, plus, have you asked for an extension yet? you can get up to 90 days on your trial.

it's my guess, and it's only a guess, that the built in delay before a filter can go HU is 30 days. yes, there is a built in delay so that a filter wont be spammed to death in the first few days just to get the free program and to get a good sampling of use. so, i dont know of anyone who's gotten the required three HU's within that 30 days. so, ask for the extension and keep producing. i have NO doubts you'll get the three (and more).
If wishes were horses... there'd be a whole lot of horse crap to clean up!

Craig
  Details E-Mail

Join Our Community!

Filter Forge has a thriving, vibrant, knowledgeable user community. Feel free to join us and have fun!

33,712 Registered Users
+19 new in 30 days!

153,534 Posts
+27 new in 30 days!

15,348 Topics
+72 new in year!

Create an Account

Online Users Last minute:

5 unregistered users.