Page MenuHome

Positioning bug with instance on point with geonodes and a decimate modifier on base mesh.
Closed, DuplicatePublic

Description

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

Blender Version
Broken: version: 3.2.2, branch: master, commit date: 2022-08-02 18:15, hash: rBbcfdb14560e7
Worked: (newest version of Blender that worked as expected)

Short description of error
Hello. The position of instanced collection on point using geonodes is changing everytime you reopen the blender file, while using a decimate modifier on the mesh they are instanced on.
Well I noticed it when I got back my render from sheep it and the trees had different positions on almost every frames. While when I rendered a few frames myself and did not reopen the file in between, position remained the same.

It seems like reopening the file makes the decimate process slightly different everytime in its calculation, thus the resulting geometry and therefore the instances on it moves accordingly.
Applying the decimate modifier solves the issue it seems, but be best to be able to keep modifier for future changes if needed.

Exact steps for others to reproduce the error
(Updated with smaller blend file for ease)

  • Use the provided blend.file
  • Open Blend file, ave image/take screenshot for comparison of the Object mode (look at the trees on the right side of the hill for ease)
  • Close the Blend file, reopen it and compare
  • The position of the trees on the hill will be changed (see screenshot below of 3 different positions, each time closing and reopening the file)

Event Timeline

hi, I created a smaller blend file to reproduce this bug

version: 3.4.0 Alpha, branch: master, commit date: 2022-09-13 22:06, hash: e1a9c16176df, type: release
build date: 2022-09-14, 00:58:45
platform: 'Linux-5.19.6-hardened1-1-hardened-x86_64-with-glibc2.36'

the position of tree objects on the left will change after every Edit mode -> Object mode, but not on the right

I found the object on the left is bigger than the one on the right, so it takes a long time (1.1s on my computer) to go back to Object mode.
But the one on the right, it only takes 0.2s on my computer.

If I make the object bigger on the right by extruding many times, this bug will also happen.

EDIT: this bug doesn't seem to be 100% reproducible

Note for developers: I can confirm the issue with a regular Blender, but if I run it without threads (--debug-depsgraph-no-threads --threads 1) the issue goes away.

Richard Antalik (ISS) changed the task status from Needs Triage to Needs Information from User.Sep 16 2022, 7:03 AM

Is this issue with smaller file same as reported? When I reopen file instances seem to be at same place. Or is it necessary to render to reproduce the issue? I can reproduce difference between object and edit mode though.

I can reproduce difference between object and edit mode though.

Because of the Decimate modifier can't preview on Edit mode

Hello, I created a bigger mesh, can you try this file? I can also reproduce on my computer.

you can find something different:

same as above, if I run blender without threads, the issue goes away.

hardware info:

CPU: Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
RAM: 20GB
GPU: NVIDIA GeForce GTX 1060 with Max-Q Design

Should I provide more information? Please let me know, thanks!

Baptiste (Deehn) renamed this task from Positioning bug while rendering instance on point with geonodes and a decimate modifier on base mesh. to Positioning bug with instance on point with geonodes and a decimate modifier on base mesh..Sep 16 2022, 1:03 PM
Baptiste (Deehn) updated the task description. (Show Details)

Hello,

Not sure about the other file from sbchild, as it is a different process than me so might be a different bug/linked one etc...

I updated the post with a 22mb blend file so it's easy to use, with only the Hill & trees.

You don't need to render, just need to :
-open the file

  • look at the camera view
  • record the tree position (far right on the hill are easiest)

-close file and reopen
-tree position will have changed.

At least for me, it is changing everytime, as shows the 3 screenshots corresponding to closing/reopening 3 times in a row.

Richard Antalik (ISS) changed the task status from Needs Information from User to Confirmed.Sep 16 2022, 11:42 PM

I can reproduce the issue. Looks like the collapse mode of the decimate modifier is not stable. I'm not sure yet if this is an issue with multi-threading or if multi-threading just makes it more likely (e.g. because memory addresses are used for something).

In this file I can see in the spreadsheet that the positions change when I rerun the decimate modifier with the same settings.