Jump to content

Uploading an exported group of meshes with one physics mesh


Ivanova Shostakovich
 Share

You are about to reply to a thread that has been inactive for 2607 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

I am remodeling my house. It consists of four meshes each having eight or less materials. I exported it as a group so when uploaded, it will be an object compsed of four linked meshes. When I upload it I will be providing a PHYS mesh. How do I dictate which will be the root prim, and ensure that the PHYS mesh is associated with that root?

Link to comment
Share on other sites

There are quite a few posts on this board explaining how to get your physics models to work with your linkset. I am not the expert on that having only done it once I think.

 

BUT I wanted to comment that land impact wise it is likely better to import each piece separately and then link in world. Your "root prim" will be just like with regular prims the last piece "clicked" before linking.

So if you haven't done this before (or often) it might be good to head over to the beta grid and do some testing. So far, I have never found a house that imported better as a linkset than in separate pieces. It isn't that big a deal to put them together in world :D.

 

Imagine someone will point you in the right direction re the physics models and naming thing should you decide to go that route.

 

Good luck.

  • Like 1
Link to comment
Share on other sites

Yeah :matte-motes-tongue:, name your meshes and your physics meshes accordingly like:

MainStructure
MainStructure_PHYS

Object_001
Object_001_PHYS

Object_002
Object_002_PHYS

and so on...

(if you have LODs as well, the naming convention from High to Lowest + Physics looks like this with recent SL viewers.

"cylinder"
"cylinder_LOD2"
"cylinder_LOD1"
"cylinder_LOD0"
"cylinder_PHYS"

Since there won't be any mesh object without a physics mesh in-world, it's best to provide a phys mesh for each part anyway. Be it simple boxes, or whatever. (Can be set to Physics Type None afterwards, if needed.)

Also remember that the physics meshes will always conform to the dimensions of their associated meshes. So you can't have it as a collision shape for the 3 other objects, unless they are completely inside the main structure somehow.

The linking shouldn't be an issue, because you can re-link easy enough in-world. Though, we probably have to wait until Drongle pops up. I guess he will know what determines the root.

Link to comment
Share on other sites

"I guess he will know what determines the root."

Alas, no, I don't. I thought I did, but I just tested about a dozen uploads of the same file containing just three cubes (auto-LOD and default physics, no UV maps). It appeared random. Any of the three of the cubes appeared as the root in one or more of the uploads! The name of the linkset was always the first in alphabetical order (comparing different files with edited object names). When the linkset was unlinked, the cube that had been the root retained the name of the linkset, while the others were all called "Object". Since the choice of root was random, this means that the root cube received the name of a different cube in the source file, unless it happened to be first in alphabetical order. If you then relink to get the root you wanted, the whole thing is now called "Object". I think this behaviour could appropriately be described as chaos. The root appears to be unpredictable.

I think this may be the result of recent changes that introduced the naming scheme. As far as I recall, the root used to be the first <polylist> in the file. Now that the objects are sorted into alphabetical order by the uploader, I expected it to be either the first in the file or the first alphabetically. Neither seems to be the case, at least with these test files. More source code reading may be indicated, but it will have to wait until I have finished moving house.

Note that the loss of names of the non-root objects, which always happened, can be a disadvantage of uploading objects together, and that can be another reason for uploading separately and linking inworld.

Link to comment
Share on other sites

Indeed Drongle, my experience also was that a random part was chosen by the uploader as the root (in this case, all the window frames... like, yah, whatever). The physics shape size conformed to the bounding box of the entire object, or its largest xyz part, or string theory. There's no way for me to know which.

My physics scheme for the house has the complete physics shape for everything, and includes six simple triangles respresenting the Xx, Yy, ,Zz box of the whole house, uploaded with the foundation part of the house (floors, beams, and one small interior wall). It gets set to physics type PRIM, and I get floors I can walk on, and doorways and windows I can pass through. The other three parts provide the rest of the house mesh but didn't need further physics representation. I set them all to NONE after linking. Maybe it's possible that creating good physics shapes for them as well would reduce my upload costs, but my experience is that download weight is my largest LI factor.

While it would be nice if we could do all the work needed and have some unified method to bring our creations in-world without a post-process requirement, I think Chic is right. I had found it tedious to upload separate parts, assembling them in-world afterward. However, uploading as a whole on ADITI does provide me with all the POS information I need to make it easier.

Arton, for this project, I didn't create any LOD level meshes. I find it difficult to further simplify a large collection of right angles that use multiple materials, but there is probably some kind of finesse that escapes me. In the uploader I specified that MED use the HIGH LOD. After all my construction dust had settled I got an LI of 38 for the whole schmeal.

 

So, I think that's settled. Everything is random. Thank you for your help. Good luck with the move Drongle.

Link to comment
Share on other sites

After a ton of tests I pretty much don't upload linksets any longer, but when I was TRYING too :D  the root always seemed to be random for me too no matter what I did. I am not sure why that is important since it can be changed, but guessing it is a scripting thing?

I can see that if you are trying to animate an object composed of several parts then the linkset might be the best method (especially if it is a small item where you won't incure any giant land impact costs) but for larger items, I do believe the "modular" single upload works better. Others have tested with their builds and have concurred.

If you could join the house (minus doors of course) and keep the materials to eight (from what I have read here that is still the best plan) then it "might" be a viable alternative. If I ever tested that method, I don't remember my results.  I like building in HUNKS better anyway :D.  

 

 

  • Like 1
Link to comment
Share on other sites

I certainly prefer to upload the entire linkset whenever possible. It's less time consuming, more precise, and even much cheaper in L$ upload costs. Since I do all the LODs myself anyway, the land impact is exactly the same as when each part is uploaded on it's own.

About the LOD. For a larger piece there won't be much, if any, reduction in land impact with lower LODs anyway. IMO it's fine to have the high LOD of the main structure in all 4 LOD slots (Depends entirely on the size of the mesh though). The interior parts might be small enough to benefit from further reduction. But yes, there isn't much to reduce on simple wall pieces anyway. And even if you save 2 or 3 more prims, it wouldn't make much of a difference in the end anyway.

@Drongle, I expected that you would dig into the viewers source code sooner, or later. :matte-motes-nerdy: Good luck with your move.

  • Like 1
Link to comment
Share on other sites

Update: After the last edit of my model, I have an export that uploads consistently. I did ten test uploads on ADITI. On every upload, the same mesh in the linkset is made the root, with the physics shape associated with (scaled to) the correct link each time. Additionally, I was able to set that root to physics type prim.

That root link has, alphabetically, the first name in the list of meshes in the object, and it is the largest x,y,z mesh in the set. This is still speculation, but when we see different objects in a link-set being chosen as the root, perhaps the uploader simply doesn't have sufficient information to make the proper choice, or rather, the choice we want it to make. I suggest that a useful feature would be if we could make further name-specific distinctions in our objects. For instance, I could name one of the meshes in the dae House_Part_ROOT, ensuring that that part would be made the root of the linked object.

  • Like 1
Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 2607 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...