Reserved-name attributes are attributes that nodes expect to operate on. For example, the Point Instance node expects its input to have position , rotation and scale attributes.
I tried to separate points based on height using the displacement texture, but I get a wrong result. Looks like the Attribute Sample node creates attributes that are offset from the displacement texture on the surface:
I can confirm this. I also tried to use displacement modifier and Attribute sample texture node on the same object. It looks like they applies a texture differently. Changing coordinates parameter of displacement modifier did not improve the situation.
Should not the Attribute sample texture node and other modifiers have opportunity to unwarp a texture in the same way?
I thought about using that, but I can’t figure out how to compare z position only. Either there’s some new type of math, that I haven’t heard of, for comparing vectors or Attribute Compare is broken… It’s really hard to troubleshoot without some sort of attribute inspector.
Location is a XYZ vector, there’s some separate vector node coming, also you can try to multiply by another vector such as (0,0,1),then doing a sum of some sort for example.
Hi, are there any news in regard of converting the generated instances into an actual object (mesh), so it can be exported to a game engine? Does it work well even for large number of instances?
Thanks for the hint. So does this mean that Attribute Compare doesn’t compare xyz values separately, but combines them into one value somehow and then does the comparison?
Yay for docs! Here’s a bit of feedback for them though:
The “naming convention” section is kind of weird. Those seem like built-in attributes to me?
How to call out nodes should be consistent. On the page there is both the grammatically incorrect ... in the Point Distribute to ... as well as the much better ... created by the Point Distribute Node in... I think the inclusion of Node or just node would read better in all cases.
The notes are oddly asymmetrical. The naming convention section usually describes where the attribute is used like Used in the Point Distribute... but the top section is worded differently. Maybe have an explicit “Used by” example section for each note consistently?
“radius”, “Float”, “Controls the size of points in the viewport”, “Used by: Point Distribute node” etc.
“id”, “Integer”, “Provides a stable value for random calculations. Mostly internal use only.”, “Created by: Point Distribute node. Used by: Attribute Randomize node”
Built in attributes are attributes that cannot be removed, and the data will always have them. Naming convention attributes are used implicitly by nodes, but they’re just like any other attribute, and you can add them and remove them.
scale is assumed to be a vector type.
radius is only built-in for pointclouds, where it’s assumed it will have a float type.
I understand. The way they are separated in the table right now does not seem totally clear : “naming conventions” just sounds like “good practice for users” -it’s not clearly communicated that they are for internal use. Maybe your explanation (the one I’m replying to) could be added as a paragraph before any of the tables ? I’m more technical than most and yet I had a little trouble figuring out what to make of it, I would encourage a little more verbosity.
Additionally, isn’t that paragraph incorrect ? ->
Used in the Point Distribute to control the rotation of instanced objects or collections.*
That would be the Point instance node, no ?
In any case, I welcome the effort on documentation. It’s a big leap Blender is taking with geometry nodes and it’s important to have good docs.