Home
Search
Configure Global Search
Log In
Transactions
T85585
Change Details
Change Details
Old
New
Diff
{F9794250} In Random mode, the **Density Max** socket suggests that this limits the maximum density. However, multiplying the Density Attribute means that the Density Max can be overridden. It seems there is an ssumption that the Density Attribute is likely to be a scalar value from a weight map in which case this would work. Either this is a bug or it is by design. If it is a bug then here is a suggested fix in the `sample_mesh_surface` function in `source/blender/nodes/geometry/nodes/node_geo_point_distribute.cc`: `const float v0_density_factor = std::max(0.0f, (*density_factors)[v0_index]);` change to `const float v0_density_factor = std::max(0.0f, std::min(base_density, (*density_factors)[v0_index]));` etc... Otherwise the socket should just be renamed to **Density** to avoid confusion.
{F9794250} In Random mode, the **Density Max** socket suggests that this limits the maximum density. However, multiplying the Density Attribute means that the Density Max can be overridden. It seems there is an assumption that the Density Attribute is likely to be a scalar value from a weight map in which case this would work. Either this is a bug or it is by design. If it is a bug then here is a suggested fix in the `sample_mesh_surface` function in `source/blender/nodes/geometry/nodes/node_geo_point_distribute.cc`: `const float v0_density_factor = std::max(0.0f, (*density_factors)[v0_index]);` change to `const float v0_density_factor = std::max(0.0f, std::min(base_density, (*density_factors)[v0_index]));` etc... Otherwise the socket should just be renamed to **Density** to avoid confusion.
{F9794250} In Random mode, the **Density Max** socket suggests that this limits the maximum density. However, multiplying the Density Attribute means that the Density Max can be overridden. It seems there is an
a
ssumption that the Density Attribute is likely to be a scalar value from a weight map in which case this would work. Either this is a bug or it is by design. If it is a bug then here is a suggested fix in the `sample_mesh_surface` function in `source/blender/nodes/geometry/nodes/node_geo_point_distribute.cc`: `const float v0_density_factor = std::max(0.0f, (*density_factors)[v0_index]);` change to `const float v0_density_factor = std::max(0.0f, std::min(base_density, (*density_factors)[v0_index]));` etc... Otherwise the socket should just be renamed to **Density** to avoid confusion.
Continue