Log In
New Account
Home My Page Projects Blender 2.x BF release
Summary Activity Tracker SCM Files

Blender 2.6 Bug Tracker: Browse

[#21900] Multi-level library linking issue, SVN 27833 / 2.5A2

Date:
2010-04-03 18:16
Priority:
3
State:
Closed
Submitted by:
Alan Taylor (alanvtaylor)
Assigned to:
Ton Roosendaal (ton)
Category:
Tools
Status:
Fixed / Closed
Relates to:
Duplicates:
Patches:
 
Summary:
Multi-level library linking issue, SVN 27833 / 2.5A2
Detailed description
Apple PowerBook G4 / Mac OS X 10.5.8 / Mobility Radeon 9700M / SVN 27833 + 2.5A2

There seems to be an issue with multi-level linked libraries.

In this example, all linking is performed with groups, all paths are relative, nothing is made local.

Let's set up an example situation where I have a low level library file (lib_low_level.blend), with a corner (group "corner") that I wish to append to a selection of objects at a higher library level.

In the high level library file (lib_high_level.blend), I have two objects (a cube and a cone) that both use the corner from the lower level, resulting in groups "cube and corners" and "cone and corners"

At the top level (main.blend), if I link to group "cone and corners" everything appears normally, now if I link to group "cube and corners" I see the cube, but there are no corners, just their empties.

However, if I save the file and reopen it, all is well. This is consistent behaviour that I've seen on 2.5 Alpha 2, SVN 27833 and a couple of more recent builds.

A zip file is attached with all of the files mentioned above.

Followup

Message
  • Date: 2010-04-04 02:38
  • Sender: Hans Erickson
  • I have found the same issue with Lib linking along with some other problems. I have a large file with several complex items linked. Suddenly when I tried to add with Shift A the "Group Instance" dissapeared even though Library was still present in Outliner. In addition if I changed the location and rotation of the linked items they would appear in various spots during file opens or during either a render or if I pushed play in the game engine. I have been attempting to reproduce it in a simple blend since the problematic blends for me is over 40megs. I just wanted to confirm this bug as well. I am running a win64bit AMD PhenII x 4 810 processor 2.60 GHz and a Gforce 9500 GT graphics card with uptodate drivers
  • Date: 2010-04-04 10:55
  • Sender: Alan Taylor
  • I should add that:

    (1) In reproducing this, you'll need to recreate your own main.blend and not use the one included (having been saved and reopened after linking, it's fine).

    (2) If I had more similar groups, in lib_high_level.blend, the first one linked always appears correctly, and all subsequently linked groups display the issue.

    (3) This always affects groups contained below the high level library file.
  • Date: 2010-04-09 12:34
  • Sender: Alan Taylor
  • I've attached two screen captures to illustrate the problem further with SVN 28054.

    /* linking issue 1.png */

    Group "cone and corners" has been linked first (where the small sphere is the "corner" from the lower level library file).

    Group "cube and corners" has been linked subsequently. We can see no corners, just their empties.

    /* linking issue 2.png */

    Group "cube and corners" has been linked first (where the small spheres are the "corner" from the lower level library file).

    Group "cone and corners" has been linked subsequently. We can see no corner, just its empty.

    ----

    Again with both examples, a quick save and reload is all that is needed to fix the issue.

    It's worth noting that prior to save and reload, the missing "corner" spheres do not render.
  • Date: 2010-05-03 05:42
  • Sender: Matt Ebb
  • Confirmed on rev. 28540, mac os x.
  • Date: 2010-10-20 01:16
  • Sender: Nathan Letwory
  • The file opens fine on Windows 7 Ultimate 64bit (r32606). Could you please test again and report back soon?
  • Date: 2010-10-20 16:34
  • Sender: Alan Taylor
  • Thanks for looking at this - It's still present on 32613.

    The file (main.blend) will open fine as it's already been saved and reloaded (see note above from 04/04); you'll need to perform the linking yourself to see the error.

    To save you trawling through the above, try this:

    (1) unzip multi level linking issue.zip
    (2) open main.blend, (so you can see what it should look like)
    (3) FILE -> NEW
    (4) X to delete the cube
    (5) FILE -> LINK then navigate to wherever you've put the unzipped files, enter lib_high_level.blend, goto GROUP then "choose cone and corners", click LINK
    (6) A cone with a sphere on top will have appeared, move it to one side to make room for the next library item
    (7) FILE -> LINK then navigate to wherever you've put the unzipped file, enter lib_high_level.blend, goto GROUP then "choose cube and corners", click LINK
    (8) Now a cube will have appeared with four empties - where those empties are, there should be spheres too.

    Save then reopen the file you just created and all will be well - just like the supplied main.blend.

  • Date: 2010-11-24 19:02
  • Sender: Ton Roosendaal
  • will assign to self for investigation.
  • Date: 2010-11-28 15:02
  • Sender: Ton Roosendaal
  • OK... just a note for now, it seems not to be related to multilevel linking (which works) but to the fact there's a group linked, that has a group linked inside.
    Still should be solvable, but will take more time to trace the code in detail.
  • Date: 2010-12-04 16:45
  • Sender: Ton Roosendaal
  • OK i've been diving in this again.
    It appears to be an issue since 2006, Orange project (first time we used lib linking so massive). In the code there's a lot of lines discussion and comments about the case.

    There seems to be a conflict resolving linking data when you add library data as user (in multiple steps), versus resolving it all at once during file reading. The latter works fine, the first case needed special handling.

    I've found a nice fix for this, surviving your test, and tests I did here. Thanks for report!
 

Attached Files:

Name Date Download
multi level linking issue.zip 2010-04-03 18:16 Download
linking issue 1.png 2010-04-09 12:34 Download
linking issue 2.png 2010-04-09 12:34 Download

Changes:

Field Old Value Date By
ResolutionInvestigate2010-12-04 16:45ton
close_date2010-12-04 16:452010-12-04 16:45ton
status_idOpen2010-12-04 16:45ton
assigned_tojesterking2010-11-24 19:02ton
ResolutionApproved2010-10-20 01:16jesterking
assigned_tonone2010-10-20 01:16jesterking
CategoryImport/Export2010-05-03 05:42broken
ResolutionNone2010-05-03 05:42broken
File Added10766: linking issue 2.png2010-04-09 12:34alanvtaylor
File Added10765: linking issue 1.png2010-04-09 12:34alanvtaylor
File Added10661: multi level linking issue.zip2010-04-03 18:16alanvtaylor