Maniphest T99088

Regression: When making a collection real, curves with depth in the collection are instantiated twice
Confirmed, HighKNOWN ISSUE

Assigned To
None
Authored By
thomas pahler (thomason1005)
Jun 22 2022, 12:57 PM
Tags
  • Modeling
  • BF Blender
Subscribers
Germano Cavalcante (mano-wii)
Hans Goudey (HooglyBoogly)
Philipp Oeser (lichtwerk)
The5 (The5)
Thomas Dinges (dingto)
thomas pahler (thomason1005)

Description

System Information
Operating system: Windows-10-10.0.19044-SP0 64 Bits
Graphics card: NVIDIA GeForce RTX 3070 Ti/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 512.77

Blender Version
Broken: version: 3.2.0, branch: master, commit date: 2022-06-08 10:22, hash: rBe05e1e369187
Broken: 3.0
Worked: 2.93

Caused by rBb9febb54a492: Geometry Nodes: Support modifier on curve objects

Short description of error
when making a collection real, curves where geometry/bevel/depth is not zero are created twice.
curves that do not have this property set are only created once.

Exact steps for others to reproduce the error

  • open the attached file

  • select the collection instance
  • object -> apply -> make instances real

What should happen

  • every object of the collection appears once

What happens

  • the "BezierCurveWithDepth" appears twice in the hierachy

this also is the case, when exporting the instanced collection, without making it real

Event Timeline

thomas pahler (thomason1005) created this task.Jun 22 2022, 12:57 PM
thomas pahler (thomason1005) updated the task description.Jun 22 2022, 1:07 PM
thomas pahler (thomason1005) updated the task description.
thomas pahler (thomason1005) updated the task description.
thomas pahler (thomason1005) updated the task description.Jun 22 2022, 1:10 PM
Omar Emara (OmarSquircleArt) renamed this task from when making a collection real, curves appear duplicated to When making a collection real, curves with depth in the collection are instantiated twice.Jun 22 2022, 2:06 PM
Omar Emara (OmarSquircleArt) changed the task status from Needs Triage to Confirmed.
Omar Emara (OmarSquircleArt) added a project: Modeling.
Philipp Oeser (lichtwerk) renamed this task from When making a collection real, curves with depth in the collection are instantiated twice to Regression: When making a collection real, curves with depth in the collection are instantiated twice.Jun 22 2022, 10:39 PM
Philipp Oeser (lichtwerk) updated the task description.
Philipp Oeser (lichtwerk) triaged this task as High priority.Jun 22 2022, 11:13 PM
Philipp Oeser (lichtwerk) added subscribers: Hans Goudey (HooglyBoogly), Philipp Oeser (lichtwerk).

Caused by rBb9febb54a492: Geometry Nodes: Support modifier on curve objects

I know some of the consequences of that commit have been "accepted" as Known Issues, I am not sure this issue reported here should (or could not be prevented) @Hans Goudey (HooglyBoogly) ?
Will set to High prio since it is a regression until further notice by the module.

Philipp Oeser (lichtwerk) updated the task description.Jun 22 2022, 11:13 PM
Campbell Barton (campbellbarton) edited projects, added BF Blender (3.2); removed BF Blender.Jun 28 2022, 6:47 AM
Thomas Dinges (dingto) added a subscriber: Thomas Dinges (dingto).Jun 28 2022, 4:07 PM

Blender 3.2.1 is scheduled for release soon. Any chance to fix this still? @Hans Goudey (HooglyBoogly)

Hans Goudey (HooglyBoogly) added a comment.Jun 28 2022, 4:49 PM

I'm not sure I see a clear way to fix this at the moment, nothing I'd think of safe enough for 3.2.

Pratik Borhade (PratikPB2123) edited projects, added BF Blender; removed BF Blender (3.2).Jul 6 2022, 8:12 AM
Hans Goudey (HooglyBoogly) changed the subtype of this task from "Report" to "Bug".Sep 6 2022, 6:41 AM

I think there are two ways to solve this:

  1. Add some flag to instances so we can tell when they correspond to a geometry component that doesn't match the original object type (the instances used for the geometry component system), and skip those instances here.
  2. Don't use the object "dupli list" for this feature. Instead look into the InstancesComponent of the evaluated geometry set.

Personally I prefer the second approach. The first is working around the problem and ending up with something more complicated and fragile, the second seems like a real step forwards in the features we want to support in this area (realizing geometry instances to objects, etc).
The problem with that approach is that the instances from the "Instances" panel aren't included in the InstancesComponent. However, we've talked about versioning away that panel for a while. Maybe now is the time to look into that...

Philipp Oeser (lichtwerk) added subscribers: The5 (The5), Germano Cavalcante (mano-wii).
Hans Goudey (HooglyBoogly) changed the subtype of this task from "Bug" to "Known Issue".EditedNov 11 2022, 1:41 AM

For this bug, since it can be worked around relatively easily, I think I will wait to implement the fix with the second option I mentioned. In the meantime I'll make this a known issue, because I don't know exactly when we'll be able to do that.