Jump to content

3ds Max - Exploding Mesh Issues


Ross Myhre
 Share

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

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

Recommended Posts

Hello everyone!

I've been attempting for the last week to upload a rigged mesh to SL with no success. I thought I'd upload something simple to see what I'm up against before I start modelling proper... Good job I did lol

I am using 3ds Max with Wiz Daxter's SLAV plug-in and everytime I upload my mesh to SL it's an absolute mess :/

Exhibit A: My awesome shirt test

 

As far as I can tell I am following the wiki to the letter.

I add the bone names/number to my .DAE file. 

My verts all appear weighted.

I'm not ticking the Joints box on the SL upload UI. (even though I like being a giant stick insect)

 

I've tried various basic skinned models and they all do the same thing. And even if I import an avatar to 3ds Max using SLAV and then attempt to upload part of it's mesh to SL, which should be perfectly skinned, it turns into a huge mess when I wear it. All the models are fine and of the correct scale when rezzed on the ground. 

 

I'm convinced it's a skinning issue, since it only explodes in the uploader preview window when I tick the Skin Weights box. The thing is I've painted weights onto very simple 18 polygon boxes, where I'm sure each vert is weighted to 1, and they still behave like this.

 

Does anyone have any idea of possible reasons for my problem?

Any advice would be greatly appreciated!

Thanks for reading. 

Link to comment
Share on other sites


Meishi Darkes wrote:

When you import your av into SLAV what scale are you using?

Looks like a scaling issue to me aswell. Since the object rezzes the correct size, I'd say the skeleton is not properly scaled.

Ross, three questions:

what is the scale of the skeleton in 3ds max? (select the skeleton and right click the scale button)

what is the size of the skeleton? (utilities -> measure)

what are the unit settings in the DAE exporter?

Link to comment
Share on other sites

Thanks for the replies Daniel, Meishi and Kwakkelde!

I thought the object rezzing at the correct scale in-world would be a good thing lol

When I  import the avatars using SLAV I have been leaving the scale set to 40, mainly because my items look the right size rezzed on the ground once imported to SL.

The skeleton in 3ds Max has a scale of 100%.

The dimensions of the skeleton are: x 15.259m  y 57.36m  z 81.047m. (I hadn't measured it previously. Quite the giant)

Both my unit settings are at Metres and the .DAE exporter always shows as auto with the system scale of Metres showing as greyed out underneath. 

 

OK, I'll do some tests with the SLAV / SL import scale and see if I get better results. 

 

Link to comment
Share on other sites

OK Kwakkelde thanks for the information. That makes sense!

You were all correct about it being a scale issue. I never would have guessed that.

Here's the result of my test: RESULT 

As you can see from the picture the worn mesh is exactly the same as the mesh in Max. But for some reason SL uploads it with strange scale numbers and when the mesh is rezzed on the ground the ratio is off. I'm not sure if this has any negative consequences. I would like to know the reason for it though all the same if anyone knows.

For anyone wondering about my workflow: 

I imported the avatar/skeleton using SLAV and changed the scale from 40 to 1.

I then just made a basic box mesh, added a Skin modifier and set up the skin weights appropriately. (making sure each vert has a total weight of 1)

Added a material to the mesh to avoid the resulting SL upload error if you don't.

Exported the collada (.DAE) 

Changed the .DAE bone list with a text editor. And then uploaded to SL. 

In the SL uploader I have tested a Scale of 1 and 40. 40 gives me the most lifesized model. 1 gives me a micromesh lol. 

I also would be interested to know if the scale of the mesh when it is rezzed on the ground has any side effects on the worn item, if anyone knows. 

 

Thank you everyone for your help! 

Link to comment
Share on other sites

The scale when rezzed opposed to when worn makes no difference as far as I know, you can prevent the tiny or huge size you now have when rezzing it on the floor by changing the scale number in the upload menu, it will also show you the size it will be.... It's all a bit clumsy, but so is half the stuff we need to do to make 3ds max work with SL:)

Link to comment
Share on other sites

Haha, ok that's just what I assumed. I'll just go with the scale of 40 in the SL uploader for the sake of it.

Any idea about the ratio thing though? 

In Max the mesh is:

x: 0.004m

y: 0.032m

z: 0.015m

But then SL, if the Scale is set to 1, uploads as:

x: 0.013m

y: 0.064m

z: 0.015m 

Link to comment
Share on other sites

I don't know enough about Max to say anything definitive, but the final positions of vertices is determined by two things in the Collada file. First, there is a <geometry> section whch has all the vertex positions with reference to a local frame of reference for that geometry. tThen when this is used in an <instance_goemetry> in a <node> in th <visual scene>, the <node> can specify a transformation which is applied to the local vertex positions to place them in the scene frame of reference. That transformation can include scaling, rotating and moving, possibly differently  along/about each axis. The transformation(s) may be expressed in those components, or as an incomprehensible 4x4 matrix that combines them.

In Blender, th <geometrey> positions correspond to the local vertex coordinates, while the transformationscorrecpond to those transformations applied at the Object level. It is generally a good idea to "Apply" the object level transformations to the vertex data before export, although as far as I know, it is only negative scaling (the result of objecty-level mirroring) that causes problems with the upload to SL.  In Max, you are using a different exporter, and the treatment of the object-level transformations may be different in such a way that you see the combined result in Max, but lose the object level transformation in the exported file. So my advice is to do the equivalent of "Apply" with the Max data before export. Someone might be able to tell you whatever arcane terminology Max uses for this process.

Link to comment
Share on other sites

What I did to make things come out the correct size is scale up the SLAV default body till it was about 1.8 meters in size, and facing the correct direction, then reset scale and transforms so it reads 100% and 0 degree rotation in all axes.  Then I modeled the clothing or avatar body to fit that scale, reset transforms, collapse the stack, then save a version at that point.  Then proceed to rig if needed, delete SLAV body parts, and export.

From Max 2010 or 2011 you can use the FBX 2011.3 plugin and save directly to Autodesk Collada.  For Max 2012 you need to save to FBX, and choose 2011 file version in the save dialogue window.  Then use the standalone FBX 2011 converter to turn the FBX into Collada format.

With the correct units set up in Preferences in Max, my models scaled to the correct human size, and the right export path, I have not had any sizing problems once it gets into SL.

Link to comment
Share on other sites

Ok I have followed this thread and got lost over scaling from 40 to 1. My brains don't see a size comparison thingy in  3ds. Ok However watching this 2 videos

and

 I have been about to Run SLAvatar.mse ( which is a max script) then open any other files that came with the MAX_SLAV folder in Max.

 I giant step for me considering the readme note card that comes with MAX_SLAV just say "Import: Run SLAvatar.mse [Load] [Create]" .  This got me and a few people on the SL 3d group pulling their hair out.

I had figured out SLAvatar.mse is Max script and it would just open a skeleton after I ran it. Wrong!

The 1st video no voice but clear step by step visuals But he starts with exporting his sl avatar as an Xml file.

 The only problem  I got is all the files in the folder load the same mesh. Even the guys sl avatar loads with a skirt. I found you can delete the mesh bits to get down to the skeleton. Not sure if that is ok to do as I want to make my own clothing. And not sure if the mesh I make and upload will be of the new type SL mesh.

Do I need to do the 40 to one scaling and  if so what do  I use as an before and after comparison?

 

Link to comment
Share on other sites


Ross Myhre wrote:

That wiki page is outdated. SL uses Collada 1.41 now, which is what Max 2012 exports so no need to mess around with the .fbx converter.

It does not work correctly.  I tested a 6 sided prism, with 8 texture slots (one each on the 6 sides + top & bottom), exported via built-in Collada exporter, and uploaded to Aditi (beta grid) using viewer 3.3.0.  It arrives with only one texture slot.  Selecting one face does not work.  The same object exported from Max 2010 worked in the past (I will re-test it when I get a chance later).

Link to comment
Share on other sites

All you need to do to run SLAV is drag the SLAvatar.mse or SLAvatar_2012.mse straight into your Max window. Then the SLAV window shows up in Max and you choose your avatar.

In the window choose which avatar you want and then press LOAD to get it ready and then CREATE will make it appear in your Max scene. 

The Scale setting we were talking about is in this same menu window. 

 

You can delete the avatar mesh if you like. I leave the Head Torso and Legs for my guides and delete the Hair Eyes Skirt etc. In fact I untick them from the SLAV import window. Just leave all of the bones. It's the bones that you'll be skinning your mesh items to (wrongly called rigging by the SL community).

 

Your object will be the right type of mesh for SL if you export it as a collada (.DAE) file. I have been exporting my .DAE files straight from Max 2012 which gives you a Collada 1.41. But as Daniel says in an above post you may need to use a converter for multi-faced meshes. I haven't delved into that myself yet so I cannot say. This wiki link explains all that. AND if you haven't got it bookmarked you should have, because it states vital info for the whole mesh export / import process.

http://wiki.secondlife.com/wiki/Mesh/Exporting_a_mesh_from_3ds_Max 

 

As for needing to change the scale from 40 to 1. Different people seem to be doing things slightly different ways (hacking lol).

The reason it is set to 40 as default is because just under 40 inches = 1 metre. And since SL requires your mesh scene to be set up as Metric this will result in a 40 metre avatar.

That was the whole purpose for this particular thread. My items were ending up at 40 metre scale in SL and resulted in massive distorted blob meshes when I wore them. Thanks to some input I fixed the problem (by changing the 40 to 1), but you can read the first posts to see all that.

 

Good Luck! 

Link to comment
Share on other sites

Thanks tons. You have demystified and simplified the 40 to 1 scale talk. But I get a license
error message when I change the 40 in the "Load Create" window.

I watched a misleading tutorial called Export from 3Ds Max 2010 to Second life and got prompted to buy 3D STUDIO MAX SCRIPT + IMPORT. Hopping this would help me export a finished mesh to Second Life. The guy that made the tutorial has not replied to my questions.

But I also see the MAX_SLAV script is a demo. So I am not sure if that is stopping me from changing the scale or should I just use the Rule tool in Max to change scale  (Example 40 meter avatar to 1)

I looked at the original thread and it's not clear at what point the scale is changed. From looking at the script menu it looks like the right place but I want to make sure I don't have to buy the 3000 Linden script if I don't need it.

 

Link to comment
Share on other sites

  • 2 weeks later...

I note mentioned the skin modifier  for an sl mesh should have each vertex weight set to one. Does this also go for joint vertices. I mean the ones between the legs and hips. I am used to normal skinning where if you know what I mean. Also when I skinned a mesh the sl bones did not have any effect on the mesh.

Or are all the vertices supposed to be weight to the pelvis.

Link to comment
Share on other sites

  • 1 year later...

Hi folks, thanks fot that post that helps a lot.


Im feeling im so close to finish my workflow from Max to Marvelous Design back to MAx and finally to SL.

After a lot of wrok with scaling i find the right combination between Wiz Daxter SLAV plugin and MD model scale, so i import the SLAV avatar in 1.0 scale and import like Autoscale in MD make the clothes and export like OBJ, use topogun to retopo the mesh so i woud like to work with quads instead triangles, and import that retopo mesh into MAx again.

My suprise is when i apply a skin modifier i get allways hard edges with the vertext weight so my mesh its deform in a hard way in all the zones when transition to other zones existe. i try to ilustrate my problems just in case you can help me or advice about something sure im doing worgn

My retopo mesh   retopo_mesh.JPG

And the vertex weight squema using all face colored to ilustrate it, but really all this coclor are all red in the vertext wight of a bone

 

vertext paint.JPG

Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 4072 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...