Geometry Nodes

Not really a bug, and not a feature request but rather a bit of a complaint from my side.
I found “Curves to points” in “Length” mode gives annoying jumps in point distribution.


From my user perspective, I expect this node in this mode would place points in exact intervals starting from the beginning of the curve. If the curve’s length is longer than an integer number of points, I expect that this node just quit sampling rather than trying to put another point at the end.

We already have “Endpoint Selection” node if we need points exactly at the ends of the curve.

On the other hand, I think, having more atomic subset of this node would be very handy.
I mean, split this node into two: 1. Curve to points by length. 2. Distribute points along curve.

I see that node №1. is placing the whole number of points in exact intervals, and №2. is distributing the whole number of points along a curve from end to end with approximate intervals between them based on the user’s interval input.

I know now there is a hack around to use “Curve to points” node with “Trim curve” together, but it wasn’t obvious to me before I learned this trick. Besides! “Curves to point”+“Trim curve” sometimes produces jumps and artifacts in some corer cases which is also annoying =(

I have realized that unexpected behavior when modeling procedural bridges.

Thanks for listening, feel much better now! :laughing:

1 Like

To be pedantic, this is the ‘official’ method to handle that scenario as explicitly mentioned in the manual for both Curve to Points and Resample Curve nodes so it’s not a “hack”, but I do find it unintuitive too. I was very confused when I first came across the behaviour and still find it annoying. Perhaps imitating the already established setup Image Texture node has and presenting two sub-options in the dropdown (rather than separate nodes), “Length—Fit/Extend” and “Length—Clip” would be nice, for instance?

2 Likes

That would be a good solution!

@HooglyBoogly Towards my very previous message about the “Curve to point” node.
I think the documentation should be updated in “Curve to point”+“Trim curve” to develop this solution a bit further, providing a few examples.
I believe it’ll help beginners to avoid unexpected behavior.
Just a suggestion.

Hello @Hadriscus , may i ask what you are trying to do? Have you seen or even may tried my attribute group statistics node groups.

1 Like

I had not seen that, looks great ! I’ll have to try it, hopefully this weekend. My use case is finding the mean point position (any attribute really) for each face set in a mesh. Thanks a bunch, will report back

Hadrien

1 Like

I updated to 3.4 recently, which made another step towards “attributizing” Blender. Any mesh with multiple materials now has material_index attribute, the deletion of which will result in loss of any multi-slot material assignments.

Couple of thoughts:

  1. There definitely needs to be some way in the UI to distinguish Blender’s built in internal attributes from the user ones, to prevent users from wrecking their work by accident by deleting built in attributes. I initially thought the “material_index” was just some bloat that got in as I imported an FBX file, but I was surprised that removing it deleted all my material slot assignments.

  2. It’s starting to get very confusing why is there a “Color Attributes” panel and then also “Attributes” panel. If you create any new attribute, it shows up in the Attributes panel list, except if the attribute is of a color type, in which case it shows in both panels at once. This separation is becoming quite pointless, especially given that the attribute lists themselves give the user information about both the attribute type as well as the domain, for example “Face Corner → Color”

The confusion is only going to grow after the next release, where there will be “Color Attributes”, “Attributes” and “UV Maps” panels. All the attributes are going to show on the Attributes panel, except the attributes of a “Color” type, which will show in both “Color Attributes” as well as “Attributes” panel, and then on top of that, if the attribute will have a specific combination of a “2D Vector” data type and a “Face Corner” domain, it will show in both “Attributes” panel as well as “UV Maps” panel, which I am sure will not have a word “Attribute” anywhere in its name by the time moving UVs to generic attributes is done, further deepening the confusion.

I think it’s about time to start thinking about single list panel for all the attributes, with some functionality to filter and sort them based on the domain and data type. New users won’t care for excuses about legacy reasons as to why things are so confusing.

19 Likes

Hello
Just tried the simulation build by @jacqueslucke well done! this is excelent job :heart:

If i may i have a question/suggestion:
Currently we are forced to use the timeline. Couldn’t we use a “iteration” slider instead? This give us more flexibility, If the user want it to be realtime he could simply plug in the scene frame input.

For example:

But why? Simply put, it would also allow users to pack a more elaborated effect using simulation like it’s a nodegroup/modifier.

What do you guys thinks?
:slight_smile:

3 Likes

Hi JskJ,
The feature you’re requesting is already planned to be implemented. It will be called “local time” or something. As the developers’ team mentioned in a blogpost.

Also for the record: Simulations isn’t in master yet, so things might change in the upcoming versions :wink:

1 Like

I have nodes basically adding differences in point positions from one mesh to another -

I can see the mesh updating in edit mode -

liveconnectionEdit

However, in sculpt mode I need to exit to object mode to see any upodates:

liveconnectionSculpt

I that an “just how it works” scenario or can I do anything to allow for seeing my changes while in sculpt mode? If not, are there any plans for this kind of thing to be supported?

2 Likes

Hi,

can anyone explain me why in the world does the UV Unwrap node have margin?!

Right now, Blender is borderline unusable for unwrapping meshes that are not straight up lowpoly, not because the unwrapping in Blender is slow, but because packing is insanely slow, for example:
https://developer.blender.org/T102843

The problem is caused by the fact that pretty much every operator in Blender which does some sort of unwrapping also does packing. There is no separation between the unwrapping step and the packing step.

It’s somewhat (but barely) understandable for the legacy UI operators, but it’s absolutely not understandable for Geometry Nodes:

  1. Geometry nodes are supposed to have as minimalistic, atomic operations as possible, so a node which does unwrapping and packing at the same time breaks this rule.
  2. There is literally also a “Pack UV Islands” node, right next to the UV unwrap node, which duplicates most of the functionality of the UV unwrap node. Why?
    image

Since the packing step usually takes order of magnitude more time than the unwrapping step, the workflow here is to wait for Blender to finish insanely long packing step just to provide the user with inferior UV pack, which then has to be fixed by a third party packing addon.

If we can not unwrap without waiting sometimes up to hours for a poor, slow, throwaway pack which is to be replaced with a proper UV pack when using the UI unwrap operators, why can we not at the very least skip the packing step in the GN, which is supposed to provide us with lower level atomic tools?

3 Likes

I can say that when working with Geonodes in Python. Changes I make to attributes via python don’t update immediately and I need to call an update function. This could be something similiar where that update graph isn’t called regularly in sculpt mode.

Illustration
Currently the Object Info node has the Geometry output at the bottom. If you use node wrangler’s lazy connect it will connect Location to Position. It would be nice at the top like this ^

3 Likes

Hey Devs. Just wanted to say hi and thanks for creating such an amazing toolset in Geometry Nodes.

Here are a couple of bits I’ve been messing with over the last few weeks. There are a few breakdown videos on my channel too:

12 Likes

Think this feedback is worth been mentioned here: https://devtalk.blender.org/t/node-wrangler-geometry-nodes-preview-feature-removed/27568?u=slowk1d

Hi all. Is it possible to sample index at field? Like the sample index node or the field at index node, I’m trying to do the reverse. say I have a discrete set of attributes on a domain and I want to retrieve the index at a particular value of the attribute. I haven’t spent enough time to figure out if it’s possible yet but I assume this should be its own dedicated node. Or maybe it’s a trivial task and I’m just an idiot :sweat_smile:

Hmmm this kind of reverse lookup I think would be possible with one of the nodes made by @modmoderVAAAA. I can’t remember the name and I can’t figure out how to search the new repo. What was it again ?

1 Like

Blender Archive - developer.blender.org :raised_hand_with_fingers_splayed:

1 Like

Ah yes, that’s the one. I’m far from being technical enough to understand the other potential applications of this node. The discussion on the diff didn’t help much… would you be so kind as to provide a couple examples ? (imagine I am five years old)

1 Like

You can have set of some papers with notes of some numbers on face side. On back side of this papers his indices also noted. Now, if you have set of number, you will get paper with this numbers on face side and from back side you can know index of this paper.

1 Like