best way to switch between low/hi poly meshes for linked character?

Greetings,

What is the best way to link to a character in an external blend file and still be able to quickly switch between the low and hi poly meshes (using only one armature for deformation)?

Currently I have a separate blend file for the character: one armature deforming both the low and hi poly meshes. I’ve got the hi and low poly meshes on separate layers so switching back and forth from within the character file is quick.

The problem comes in linking from the scene file: I can make a group of the armature and meshes in the character file, but when I link to it from the scene file, I lose the layer modularity: all objects in the group are lumped together into one object (hi and low poly meshes overlayed on top of eachother). I can make a proxy of the armature and it’s deforming both meshes as it ought to, but the meshes are ‘together’.

The main idea behind using one armature for both is so that I can animate once, and then see the animation on either mesh.

Is there another approach here? I would guess the goal of having one armature for low and hi poly meshes must be common, as would be linking to them from an external blend file, so I’d be happy to hear how others are doing it. Any help is appreciated:-)

I don’t have a low/high poly character to play around with, but just thinking here a bit…

Maybe create a proxy for both meshes so they can be separated out onto layers like the the rig can be…

Also, and I’m thinking back to your last post about linking, do you know groups have layers as well? I don’t know how they work really and how they relate to object layers, but it might be something to look into. When I was trying to study up on this subject, I found the manual to be lacking information on them…

If I had an hour to chat with the durian team, I would pick their brains about linking!! Not many people use linking from what I have seen here, but let’s face it, it has to be used when working on team projects…

Randy

Hi Randy,

thanks for the reply. I tried your suggestion to make a proxy for each mesh, but unfortunately it didn’t work out too well. The problem is that once I make a proxy of an item that’s inside the group, then the scale went strange, I had to re-parent the mesh to the armature, re-assign deform vertices, etc. In short, it was pretty messy; not very practical. The association between the mesh and armature was completely lost. I’d rather not have to go through all that headache for each scene file (ack!) But it was something to try;)

I have checked out the layers relating to grouping. Looking on the object panel(F7) there are layer buttons. The manual was a bit cryptic, but after a little playing I realized it’s just acting as a way to filter out unwanted objects in the group. For example, if I have a group with 3 objects; object A on layer 1, object B on layer 2, and object C on layer 3, so say when I link to this group and I only want to pull in objects A and B, then I would de-select layer 3 in the objects panel for desired group, and then object C won’t show up when I link to this group. At first I was hoping those layering buttons would let you specify what layers the objects within the group would appear in when linking to them, but no such luck:no:

Yeah, the manual really doesn’t have much on this…

Like you said, the whole linking functionality seems to be something a lot of people aren’t doing. I think this is both evident from the lack of conversation on the topic, and also I’m just not finding much via google. This leads me to think it’s just not up to par yet. It’s too bad really since this particular area of functionality is absolutely vital for any kind of team collaboration like you said, and professional pipeline/workflow.

I’m working on a solo project right now (in 2.49b by the way), so I could just ditch the whole linking effort and shove objects in separate scenes (messy!), or just avoid using a proxy, but I really did hope I could make it work, so I can follow ‘best practice’ from the start. It’s also so much cleaner from a project standpoint to have objects in their own files to track versions, etc. Other than this one issue of not being able to use my armature on two meshes, the linking is working for me, so I can’t complain too much.

Yeah, it would be great to talk with the durian team about how they’re doing it and what improvements they’ve done already in 2.5. One of their goals for the durian project is to
“Use and improve an open source creation pipeline”, so making the linking more robust and usable must be on the list.

I’ve also looked through the character files for the BBB project and I’m not seeing any proxy models in there, perhaps because of the same limitation I’ve hit? I wonder how they worked around not having a proxy model? the meshes themselves aren’t too complex, so maybe they just turned off fur for test renders, i don’t know…

Umm, isn’t this what you are looking for?

For example, if I have a group with 3 objects; object A on layer 1, object B on layer 2, and object C on layer 3, so say when I link to this group and I only want to pull in objects A and B, then I would de-select layer 3 in the objects panel for desired group, and then object C won’t show up when I link to this group.

So say A is the armature, B the low poly mesh, C the high poly mesh. You deselect layer 3 - the high poly mesh. You work on your scene with the linked character, since layer 3 - high poly mesh is turned off, you have A & B - the armature and low poly mesh. You create the scene, animate the character, create the actions, etc, etc…

Now when you’re finished and ready to render, you go back to the character’s file, disable layer B - the low poly mesh, and enable layer C, the high poly mesh. Save the file and reopen the scene file. Since the character file only has layers A&C - armature and high poly mesh, wouldn’t your scene file now just show A&C as well?

Is that what you are after?
Randy

In 2.49,you can:
1.use custom bone shape as proxy mesh,but I think it’s real hard to do,I won’t do that;
2.when you link in a group,in outliner,switch to group,and right click on the group,select’link group objects to scene’,now you can set the visiblity or layer property of those objects in group;notice:‘m’ moveing object not working,you need using python to move mass object to other layers.
also,with this,you can control the modifier’s realtime property too.
I did that before.

In 2.5,
you have more sulotion,because almost anything can be driven - just drive objects visiblity using some bone custom property.
What I real want to do is:bone layer driving objects visblity,it does not work in recent build yet,hope it will fix in the future.

In 2.49,you can:
1.use custom bone shape as proxy mesh,but I think it’s real hard to do,I won’t do that;
2.when you link in a group,in outliner,switch to group,and right click on the group,select’link group objects to scene’,now you can set the visiblity or layer property of those objects in group;notice:‘m’ moveing object not working,you need using python to move mass object to other layers.
also,with this,you can control the modifier’s realtime property too.
I did that before.

In 2.5,
you have more sulotion,because almost anything can be driven - just drive objects visiblity using some bone custom property.
What I real want to do is:bone layer driving objects visblity,it does not work in recent build yet,hope it will fix in the future.

@Randy
ha! You’re absolutely right. I was so focused on trying to do it from the scene file that I didn’t think about manually switching it back and forth in the character file. Thanks for pointing out the obvious to me:o I tried it and this approach works fine. It still requires a save in the character file followed by a re-opening of the scene file, and it’s ‘global’ for all scene files, but that’s not a big deal, it’s definitely a usable approach.

@harrisyu
aha, being able to switch on/off visibility for the separate meshes from within the scene file was what I was looking for, thanks for pointing out how to do this! I didn’t completely follow everything you said though. after creating a link to the separate objects, I can toggle visibility/selectability/rendering in the outliner, just like any other object, but the layer functionality seems a little odd; I’ll play around with it more. I was able to move a linked object, but my hi poly is showing up on two layers?..
Also, the animation in the 3d viewport is laggy with these ‘linked’ objects, which makes it harder to review animations (the meshes lag behind the armature). Have you seen this as well?

Thanks to the both of you for the help! This is enough information to move forward:-)