Line Art doesn't exclude object's instanced by geo node #103509

Open
opened 2022-12-28 06:23:07 +01:00 by Nick Alberelli · 15 comments

System Information
Operating system: Linux-6.0.6-76060006-generic-x86_64-with-glibc2.35 64 Bits
Graphics card: NVIDIA GeForce RTX 3090/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 510.108.03

Blender Version
Broken: version: 3.3.1, branch: master, commit date: 2022-10-04 18:35, hash: b292cfe5a9
Broken: version: 3.5.0 Alpha, branch: master, commit date: 2022-12-27 16:50, hash: d7dad425c0

Short description of error
Collection Line Art includes instances that are distribute my geometry nodes, even if that object is not within the Line Art target collection.

Line_art_Geo_Nodes_instance_bug.blend
Exact steps for others to reproduce with example file

  1. Open Attached File
  2. Observe Line Art is on objects outside target collection

Exact steps for others to reproduce the error from Startup

  1. Distribute Objects from a collection with Geo-Nodes
  2. Create a second collection with a Line Art Target Object only
  3. Add Collection Line Art and target collection from step 2
  4. Line Art will be drawn on Geo-Nodes instanced objects

image.png

**System Information** Operating system: Linux-6.0.6-76060006-generic-x86_64-with-glibc2.35 64 Bits Graphics card: NVIDIA GeForce RTX 3090/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 510.108.03 **Blender Version** Broken: version: 3.3.1, branch: master, commit date: 2022-10-04 18:35, hash: `b292cfe5a9` Broken: version: 3.5.0 Alpha, branch: master, commit date: 2022-12-27 16:50, hash: `d7dad425c0` **Short description of error** Collection Line Art includes instances that are distribute my geometry nodes, even if that object is not within the Line Art target collection. [Line_art_Geo_Nodes_instance_bug.blend](https://archive.blender.org/developer/F14096550/Line_art_Geo_Nodes_instance_bug.blend) **Exact steps for others to reproduce with example file** 1. Open Attached File 2. Observe Line Art is on objects outside target collection **Exact steps for others to reproduce the error from Startup** 1. Distribute Objects from a collection with Geo-Nodes 2. Create a second collection with a Line Art Target Object only 3. Add Collection Line Art and target collection from step 2 4. Line Art will be drawn on Geo-Nodes instanced objects ![image.png](https://archive.blender.org/developer/F14096546/image.png)
Author

Added subscriber: @TinyNick

Added subscriber: @TinyNick

Added subscriber: @mod_moder

Added subscriber: @mod_moder

Changed status from 'Needs Triage' to: 'Needs Developer To Reproduce'

Changed status from 'Needs Triage' to: 'Needs Developer To Reproduce'
  1. Main problem is that you input 2 icosphere at single transforms ...
  2. I notice wrong thing:
    In this video i get differnds results for instances of same geometry
    {F14097412}
    While this may not be related to the report...
1. Main problem is that you input 2 icosphere at single transforms ... 2. I notice wrong thing: In this video i get differnds results for instances of same geometry {F14097412} While this may not be related to the report...

@TinyNick Hello. Is this problem still relevant?

@TinyNick Hello. Is this problem still relevant?
Iliya Katushenock added
Status
Needs Triage
and removed
Status
Needs Info from Developers
labels 2023-02-22 12:58:52 +01:00
Author

@mod_moder Hello, thank you for following up. This seems to be an issue on these versions

  • version: 3.3.4, branch: master, commit date: 2023-02-20 11:51, hash: 5429ce1e0ad3
  • version: 3.6.0 Alpha, branch: main, commit date: 2023-03-05 23:13, hash: 9eee008691f3

Also I was wondeing what you meant by this? "Main problem is that you input 2 icosphere at single transforms" I didn't understand.

@mod_moder Hello, thank you for following up. This seems to be an issue on these versions * version: 3.3.4, branch: master, commit date: 2023-02-20 11:51, hash: `5429ce1e0ad3` * version: 3.6.0 Alpha, branch: main, commit date: 2023-03-05 23:13, hash: `9eee008691f3` Also I was wondeing what you meant by this? "[Main problem is that you input 2 icosphere at single transforms](https://projects.blender.org/blender/blender/issues/103509#:~:text=Collaborator-,Main%20problem%20is%20that%20you%20input%202%20icosphere%20at%20single%20transforms)" I didn't understand.
Author

I understand now, you meant that there where two spheres being instances to the same location by the geo nodes setup. Yes setting this geo node setup to pick instances helps with this, but does not solve the root issue

If Line Art is set to a single collection i shouldnt be seeing intersections on other collections regardless of their setup as shown in your video. I am finding this to be a limiting factor working with line art in a complex scene.

I understand now, you meant that there where two spheres being instances to the same location by the geo nodes setup. Yes setting this geo node setup to pick instances helps with this, but does not solve the root issue If Line Art is set to a single collection i shouldnt be seeing intersections on other collections regardless of their setup as shown in your video. I am finding this to be a limiting factor working with line art in a complex scene.

Is this a request for a new function?
You always can just realize instances

Is this a request for a new function? You always can just realize instances
Author

Is this a request for a new function?
You always can just realize instances

No, I am just requesting the current bug to be solved.

Line Art filtered to a Collection doesnt work properly if your scene contains geo nodes instances.

Collection filter is an existing feature, so this is not a new feature request.

Additionally I am not sure if realizing the instances is an appropiate work-around.

> Is this a request for a new function? > You always can just realize instances No, I am just requesting the current bug to be solved. **Line Art filtered to a Collection doesnt work properly if your scene contains geo nodes instances.** Collection filter is an existing feature, so this is not a new feature request. Additionally I am not sure if realizing the instances is an appropiate work-around.
Author
@ChengduLittleA
Member

Can confirm. @ChengduLittleA , can you check?

Can confirm. @ChengduLittleA , can you check?
Member

Hi @TinyNick I just got around, will check.

I think the issue I found is that I'm using BKE_collection_has_object(c, (Object *)(ob->id.orig_id)) to check if a collection has the instance, and in this case, the instanced object seems to have become a child under the shown collection and not the original one...

The collection/instance filtering has long since being a problem, the last time we faced with this problem is when we are trying to distinguish particle objects and allowing them to be excluded for calculation when there are too many in number. We didn't specifically treat geometry nodes- produced objects differently. The best thing we can hope for right now is GN-based line art where you can always input/filter exactly what geometries you need.

Hi @TinyNick I just got around, will check. I think the issue I found is that I'm using `BKE_collection_has_object(c, (Object *)(ob->id.orig_id))` to check if a collection has the instance, and in this case, the instanced object seems to have become a child under the shown collection and not the original one... The collection/instance filtering has long since being a problem, the last time we faced with this problem is when we are trying to distinguish particle objects and allowing them to be excluded for calculation when there are too many in number. We didn't specifically treat geometry nodes- produced objects differently. The best thing we can hope for right now is GN-based line art where you can always input/filter exactly what geometries you need.
Author

@ChengduLittleA Thank u for the detail that makes sense. We will have to wait for the new line art then.

A work-around that works today is t only use Object Line Art, incase anyone is also having this issue. I was able to get the results I need by tediously adding a Line Art for every object in the scene individually.

@ChengduLittleA Thank u for the detail that makes sense. We will have to wait for the new line art then. A work-around that works today is t only use Object Line Art, incase anyone is also having this issue. I was able to get the results I need by tediously adding a Line Art for every object in the scene individually.
Member

It's really not ideal to do it that way... Yeah it's kinda weird because the "particle" now comes from another collection. Somehow this depends on your interpretation on "what belongs to this collection" but I can see this will definitely create some problems when styling the object...

It's really not ideal to do it that way... Yeah it's kinda weird because the "particle" now comes from another collection. Somehow this depends on your interpretation on "what belongs to this collection" but I can see this will definitely create some problems when styling the object...
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
4 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#103509
No description provided.