GeoTree: Procedural Trees in Geometry Nodes

Will do :+1::slightly_smiling_face:

1 Like

Stick has done it’s job. Expect stick’s arrival tomorrow.

…well, almost. I just discovered a little problem.

6 Likes

Awesome. :+1:

Is there a way to get the leaves meshes in the collection to be anywhere in the scene without being at 0,0,0 for them to spawn on the branches?
Just wondering if its possible. If it is not, Its fine.

Yeah, just check the separate and reset children boxes on the leaf collection node, or delete the collection node entirely, and drag the leaf object into the graph by itself.

Ultimately, the only thing that should matter when spawning your objects is where its origin is relative to it’s geometry.

1 Like

Following this thread eagerly,

Has Stick problem been unstuck?
or are you still stuck on stick?

asking for a friend.

2 Likes

It’s a little problem I’ve had to deal with since day one, and it’s either rereared it’s head with the addition of Stick Power, or I’ve just noticed again.

I’m once again facing down the usual overgrown offshoots at the extremities of the trees, and I can’t seem to fix it without overly limiting the size of the lower limbs. I’ve got a few ideas I’ll try later today, when I’ve got more time in front of my computer, but even if they fail, I’ll probably just release what I have because it’s a fairly tiny problem overall.

…mostly, it’s just sloppy looking and annoying.

But on the plus side, the sticks really do make for some better looking trees overall.

6 Likes

And here it is, GeoTree 0.67. I wasn’t able to quite fix the problem with the branch scaling, but I did maybe possibly smooth it up a little tiny bit. Really, I’m going to need to reanalyze my entire scaling approach, since it seems to be fairly easy to break if stretched too far.

As for the rest, this tree is now using Stick Power, and is thus constructed slightly differently than the previous trees, with fewer branches on average. I did leave the option to draw the leaves on the sticks to emulate the way the trees were set up before, but you’ll need to readjust your various settings to get the same effect.

GeoTree_v0.67.7z (4.8 MB)

5 Likes

Ah. Thanks.

Looking good.

I am wondering if there is a way to get this tree to work with an addon called Pivot painter for Blender:

Does the Geonode automatically create a branch parenting hierarchy before converting to mesh? I think this might be too much of a hassle to do tbh.

Can this type of leaves be used on branches? I tried to use it. The orientation feels off on the branches.


Red is where the pivot of the plane is

It doesn’t, but it may not be too terribly difficult to do. I’ll look up if it can be done here in the next few.

Now this, I can do easily. I’ll play around with it a bit, see what works best, and provide a new option in the next update.

edit: here you go. I replaced the stick spline with an object info using the leaf node with your texture on it, then cut the connection to the join geometry node for the the twig and leaf spawner. This is what I got.

You’re really only adding those two nodes you see above, so it’s not at all difficult to do. I could set up a boolean to allow flipping between generated geometry or a prebuilt set of branches no problem.

Though you’ll have to wait til tomorrow for that.

2 Likes

Thanks man. You are awesome :+1:

Seriously mate. Thanks a lot. The alpha branches look very natural. :slightly_smiling_face: Perfection!!

Very grateful :pray:

1 Like

And here you go. I’ve made an entry to insert a custom object in place of the branches, sticks, and twigs. Right now, since I haven’t had much time to test it, you should consider the step you override to be the end point of the procedure. For example, if you slap a custom object in over the branches, you should turn off drawing the sticks, twigs, and leaves since all it’ll do is spawn instances off the vertices of your custom object, rather than the inbuilt spline.

…though you could plan ahead for that, but we’ll save that for another time.

The new additions look like such:

Screenshot from 2022-10-25 18-37-02

And you can grab it here:

GeoTree_v0.675.7z (4.8 MB)

My quest to see how hilariously tall I can make a node continues…

3 Likes

Thank you, man :pray: Works perfectly :slightly_smiling_face:

I think it looks okay :slightly_smiling_face:. As long as it does the job and you know how and what parameters to tweak. I think it is fine. Thanks again man.

1 Like

hi @skuax !

could you please tell me ( maybe in PM as it’s out of topic ) how you made those foliage assembly textures in this post ?:

Thanks a lot !

And to all posters on this topic: thanks for your amazing work on procedural trees ! it is fantastic ! <3

happy blending !

1 Like

@Renzatic I think there is a bug with the latest version :slightly_smiling_face:

If you have a project and you append the GeoTree node into that blend file and apply the node tree to a curve and convert to a mesh, the treeuv attribute is missing.

Even with Generate Uv box ticked.

1 Like

I think you have to go into the output attributes tab, and enter the name of the tree uv map into it. (treeuv in this case if I remember correctly.)

(Note to @Renzatic: This can be automated by either adding a default attribute name to the uv output attribute, or replacing it entirely with a “Store Named Attribute” node.)

2 Likes

How would I go about doing that? From what I read about it, it seems like all I’d have to do is use it to capture the UV data running out of the unwrapper node, then it’d automatically expose it as a prenamed attribute, like so…

…but that doesn’t seem to work. It’s obvious I’m missing a step, but I’m not exactly sure what or where.

1 Like

In the original blend file. When you convert to mesh. Two Uv map sets are created treeuv and Uvmap.

But if you append to a new project, for some reason, only one Uvmap is found in the attribute tab.

It isn’t the name of the uvmap attribute that is the issue :slightly_smiling_face: . Only the Uvmap of the leaves is in the attribute tab, when converted to mesh, there is no uvmap of the tree trunk and branches in the attribute tab.

Let me check it out right fast. I kinda got fixated on the whole store named attribute thing.

Edit: Okay, I appended the tree into a new scene, then went through the whole spiel to covert it to a mesh with UV maps. It worked just fine from my end.

The only thing I can figure is that it’s maybe possibly losing the attribute name during the appending process. Go to your modifers tab, then expand the Output Attributes box to see if there’s a name in the UV field. Like so:

If there is, then maybe I forgot to reconnect a node or two in the .675 release above, and need to fix it. If there’s not, then put anything you want in that field (though for the sake of simplicity, I’d use treeuv), and you should see it pop up in the attributes box when converted to a mesh.

1 Like

Thanks. Works now. It was there but was blank so I entered a name and now the uvs show up correctly. Seems appending may have removed the name in the modifier, I am not sure.

1 Like