Copy/Paste object operator copies collections specified somewhere in that object (e.g. Geometry Node Collection Info node, particle system instance collection, ...) #107111

Open
opened 2023-04-19 01:40:50 +02:00 by Firefly-4 · 9 comments

Blender Version
Broken: Current master.
Worked: Never.

Short description of error
The copy operator treats the Collection Info node as the fact that the object belongs to the collection.

Ctrl+C Ctrl+V Expected
image image image

Exact steps for others to reproduce the error

  1. Create collections Collection_1, Collection_2.
  2. Add Cube in Collection_1.
  3. Add Cone in Collection_2.
  4. Create geometry node modifier on Cube. Go in node tree:
    a. Create Collection Info node.
    b. Choose a Collection_2.
  5. Select Collection_1, Cube.
  6. Copy object in 3d view.
    Expected: Cube object will copied.
    Bug: Copyring object, collection and attach that in collection that chosen in Collection Info node.

The same happens when you:

  • Create collections Collection_1, Collection_2.
    -- Add Cube in Collection_1.
    -- Add Cone in Collection_2.
  • Create a particle system on the Cube
    -- Render As Collection
    -- specify Collection_2 as the Instance Collection
  • Select Collection_1, Cube.
    -- Copy object in 3d view.
    -- Expected: Cube object will copied.
    -- Bug: Copying object, collection and attach that in collection that chosen in the Particle Instance Collection.
**Blender Version** Broken: Current master. Worked: Never. **Short description of error** The copy operator treats the `Collection Info` node as the fact that the object belongs to the collection. | Ctrl+C | Ctrl+V | Expected | | -- | -- | -- | | ![image](/attachments/8f22a8f4-ddec-4db1-b799-6d8e743d85a1) | ![image](/attachments/b7bf8674-25df-42b7-8abc-cc90f8714d9e) | ![image](/attachments/952a1047-656c-485c-9ae8-3f81dadc3a3d) | **Exact steps for others to reproduce the error** 1. Create collections `Collection_1`, `Collection_2`. 2. Add Cube in `Collection_1`. 3. Add Cone in `Collection_2`. 4. Create geometry node modifier on Cube. Go in node tree: a. Create `Collection Info` node. b. Choose a `Collection_2`. 5. Select `Collection_1`, Cube. 6. Copy object in 3d view. Expected: Cube object will copied. Bug: Copyring object, collection and attach that in collection that chosen in `Collection Info` node. The same happens when you: - Create collections Collection_1, Collection_2. -- Add Cube in Collection_1. -- Add Cone in Collection_2. - Create a particle system on the Cube -- Render As Collection -- specify Collection_2 as the Instance Collection - Select Collection_1, Cube. -- Copy object in 3d view. -- Expected: Cube object will copied. -- Bug: Copying object, collection and attach that in collection that chosen in the Particle Instance Collection.
Firefly-4 added the
Priority
Normal
Type
Report
Status
Needs Triage
labels 2023-04-19 01:40:51 +02:00
Iliya Katushenock added the
Interest
Geometry Nodes
Interest
Nodes & Physics
labels 2023-04-19 06:49:53 +02:00
Member

Hi, thanks for the report. Can repro this locally.
Reducing density might help to understand why RAM and CPU usage were increased (see uploaded file).
Copy-pasting is not really creating duplicate of the original object. It instead is creating multiple copies of the original object and instances.
A quick fix would be to add realize instances and apply modifier > then do the copy-pasting.

Guess Instance on points node is causing this? Will forward the report to devs.

Hi, thanks for the report. Can repro this locally. Reducing density might help to understand why RAM and CPU usage were increased (see uploaded file). Copy-pasting is not really creating duplicate of the original object. It instead is creating multiple copies of the original object and instances. A quick fix would be to add realize instances and apply modifier > then do the copy-pasting. Guess `Instance on points node` is causing this? Will forward the report to devs.

I will check it. There is a suspicion that Hans had already decided it yesterday.

I will check it. There is a suspicion that Hans had already decided it yesterday.
Author

I found this older bug report while browsing and it appears to be related (huge ram spike and instance on points node is involved) but the use case is different: #99480

The bug was a bit inconsistent in my case too, I did manage to copy/paste it a couple of times while checking if it's reproducible, but 99% of the time it would hang.

P.S.
Yup, realize instances + apply worked great.

I found this older bug report while browsing and it appears to be related (huge ram spike and instance on points node is involved) but the use case is different: https://projects.blender.org/blender/blender/issues/99480 The bug was a bit inconsistent in my case too, I did manage to copy/paste it a couple of times while checking if it's reproducible, but 99% of the time it would hang. P.S. Yup, realize instances + apply worked great.

I'm shocked at what a bug this could be. I'm not sure yet, but it's terrible.

I'm shocked at what a bug this could be. I'm not sure yet, but it's terrible.

Just... how... why this happens what are visitor are think that selected nodes is selected collections for duplicate/

Just... how... why this happens what are visitor are think that selected nodes is selected collections for duplicate/

I will describe you a bug:

  1. You are copying an object.
  2. It belongs to collection 1.
  3. But the object has a node with collection 2.
  4. Copying thinks that you are copying an object and a collection 2. And also links them for some reason.
  5. The destination of the copy is collection 2, as it is active in the outliner.
  6. Now you have 2 copies of the object. The first in the collection and is evaluated for its copy of the collection 2. This is fine.
  7. But after that, the original tries to take the geometry from the collection 2, and takes already 1 mega large grass object.

I'll redo your report to reflect the actual bug, thanks for reporting it.

I will describe you a bug: 1. You are copying an object. 2. It belongs to collection 1. 3. But the object has a node with collection 2. 4. Copying thinks that you are copying an object and a collection 2. And also links them for some reason. 5. The destination of the copy is collection 2, as it is active in the outliner. 6. Now you have 2 copies of the object. The first in the collection and is evaluated for its copy of the collection 2. This is fine. 7. But after that, the original tries to take the geometry from the collection 2, and takes already 1 mega large grass object. I'll redo your report to reflect the actual bug, thanks for reporting it.
Author

So it's kind of like the grass tile including itself (infinitely?) I did not pay attention to what collection I had selected before pasting, maybe those times when it did not repro for me I accidentally selected a different collection and that's why the paste worked.

It's great that the real cause has been found 👍

So it's kind of like the grass tile including itself (infinitely?) I did not pay attention to what collection I had selected before pasting, maybe those times when it did not repro for me I accidentally selected a different collection and that's why the paste worked. It's great that the real cause has been found 👍
Iliya Katushenock changed title from Massive RAM usage increase & Blender hangs when copy/pasting this particular object with geometry nodes to Geometry Nodes: Copy object operator perceives Collection Info node as collection attach 2023-04-19 14:03:12 +02:00
Iliya Katushenock added
Status
Confirmed
and removed
Status
Needs Info from Developers
labels 2023-04-19 14:03:22 +02:00
Iliya Katushenock added reference main 2023-04-19 14:09:39 +02:00
Iliya Katushenock removed reference main 2023-04-19 14:09:43 +02:00
Member

The same happens when you:

  • Create collections Collection_1, Collection_2.
    -- Add Cube in Collection_1.
    -- Add Cone in Collection_2.
  • Create a particle system on the Cube
    -- Render As Collection
    -- specify Collection_2 as the Instance Collection
  • Select Collection_1, Cube.
    -- Copy object in 3d view.
    -- Expected: Cube object will copied.
    -- Bug: Copying object, collection and attach that in collection that chosen in the Particle Instance Collection.

I believe this is the correct way if you pate into another file, but it is unexpected if you paste locally into the same file.
@mont29 might know more...

The same happens when you: - Create collections Collection_1, Collection_2. -- Add Cube in Collection_1. -- Add Cone in Collection_2. - Create a particle system on the Cube -- Render As Collection -- specify Collection_2 as the Instance Collection - Select Collection_1, Cube. -- Copy object in 3d view. -- Expected: Cube object will copied. -- Bug: Copying object, collection and attach that in collection that chosen in the Particle Instance Collection. I believe this is the correct way if you pate into another file, but it is unexpected if you paste locally into the same file. @mont29 might know more...
Philipp Oeser added
Module
Core
Interest
Nodes & Physics
and removed
Module
Nodes & Physics
labels 2023-09-19 13:48:45 +02:00
Philipp Oeser changed title from Geometry Nodes: Copy object operator perceives Collection Info node as collection attach to Copy/Paste object operator copies collections specified somewhere in that object (e.g. Geometry Node Collection Info node, particle system instance collection, ...) 2023-09-19 13:50:49 +02:00

This is expected behavior, if your object depends on another collection, the other collection will be copied as well indeed.

This for sure could (should) be improved, but given current back-end of the ID copy/paste feature (saving in temp blendfile, and appending from there), not much to be done. Fixing this would likely require a decent re-design of the whole copy-paste system.

This is expected behavior, if your object depends on another collection, the other collection will be copied as well indeed. This for sure could (should) be improved, but given current back-end of the ID copy/paste feature (saving in temp blendfile, and appending from there), not much to be done. Fixing this would likely require a decent re-design of the whole copy-paste system.
Bastien Montagne added
Type
Known Issue
Priority
Low
and removed
Type
Report
Priority
Normal
labels 2023-09-25 16:17:03 +02:00
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
5 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#107111
No description provided.