Jump to content
Sign in to follow this  
dustty

Prims Land Impact Whatever

Recommended Posts

"Finalize Render complexity algorithm on the viewer"

(From Release notes Viewer 3.1.0)

I might have to add the object rezzes at default with a 90 degree rotation on the x axis, also in the upload window it shows as it should, as if the rotation was correct. (I used two fresh uploads today, on 3.2.0)

I really don't know what's going on and it puzzles me....

Share this post


Link to post
Share on other sites

Ah. I think that's just the thing that calculates the render weight. I wouldn't expect it to affect the LOD vswitch distance. I am puzzled too. :matte-motes-confused:

Share this post


Link to post
Share on other sites

 

Thanks for the dae files Kwakkelde, i got the same result as you, both uploding the dae files, and also reading them in matlab and stripping the polygons out and loading as collada, the LOD changes points were very different.

The face lists in both meshes are identical, but in rotating the other mesh upright some of the polygons have flipped the direction, as if the vertices have been flipped along the long axis, reversing the surface orientation, and there's something wrong with the normals and/or inner/outer surfaces.

 I dont have time to see it in more detail, but if i flip the long dimension in the test2 (test2.vertices(:,3)=-test2.vertices(:,3) ) and save as .dae, it behaves like the other one. 

 

 

Share this post


Link to post
Share on other sites

Still I never changed any normals between the two...and as you have seen for yourself all normals look fine inworld... (some faces are missing, but as I told you it's a very crude model, they aren't there to begin with) Also the prim weight for the two is identical... Again, I'm glad I got a model that works again...but I really can't stand it this doesn't make any sense:)

 

I might have to put this one in the book of Linden Lab Mysteries....

Share this post


Link to post
Share on other sites

Had a look. Certainly the wierd one behaves as you describe. I don't see any obvious differences in wireframe or normals. Looking at the scene statistics console, the object sizes appear to both be the same, 24.4, so that should switch LOD at the same point.

Looking in all sorts of ways, the only thing I found was that if you select Develop->Render metadata->LOD Info, the normal one shows 0 just above it, while the wierd one's 0 is much higher above. That is strange and could be a clue for the developers. This display used to show the LOD and the radius, which was very useful. It doesn't seem to do that any more.

I think you have a very obscure bug here, that the developers need to know about. Can you bring them to the mesh meeting on Monday to show them? Or just do a jira?

ETA: one more thought ... do either/both have UV maps? I think meshes without UV maps are getting uninitialised data instead, which could cause all kinds of havok.

Share this post


Link to post
Share on other sites

Thanks for taking a look Drongle, both objects are identical, in normals, polycount or wireframe. Only the pivot (or for SL rotation) is different. Both items have UV maps (3 of them), although not optimized in any way (just the result of automapping while constructing), but they are there.

I can drop them onto a Linden...let me rephrase..I will drop them on a Linden.

Share this post


Link to post
Share on other sites

"Only the pivot (or for SL rotation) is different."

Oh. I couldn't see that because they were not editable for me. How did you move the pivot? I suppose that could have some effect, although I did think the radiuses were the same. The "AssetPivot" pivot point mechanism introduced during beta was removed. It may be they recently made some change that made that cause problems, as it had been deprecated. It must have affected the transformations applied to the mesh data on rezzing. Those are* used again in calculation the radius. Did you use "AssetPivot" ?

*at least they were last time I looked.

Oh no..... The dae files still work, so it can't be "AssetPivot". Another failure!

Share this post


Link to post
Share on other sites

It's not the pivot position, but its orientation. I used my 3d programs for complete scenes and static renders until I started with SL, or SL building for that matter. So I haven't really taught myself to be careful with the pivots orientation.

The weird thing is the rotated object looks fine in the upload window, it even rezzes LOOKING rotated correctly. Now the weirdweirdweirdness is the fact the object is actually rezzed rotated along on axis (90 degrees). When I reset the pivot to a world orientation before exporting, I get the truss that has no issues. I'll have to see if maybe the pivot is mirrored aswell, we both discovered mirrored objects can behave strangely, although that was a volume or size issue, not rotation.

Share this post


Link to post
Share on other sites

So it is something to do with the transformations? What do they look like in the dae files? I would expect them in the <visual_scene><node>/ If it's a matrix, I probably won't understand it, but if it's nice <translate>, <rotate> and <scale>, it might shed some light.

Share this post


Link to post
Share on other sites

<library_visual_scenes>
    <visual_scene id="RootNode" name="RootNode">
      <node id="LOD01_BLUEPRINT" name="LOD01_BLUEPRINT">
        <matrix sid="matrix">1.000000 0.000000 0.000000 78.667358 0.000000 -0.000000 -1.000000 0.000000 0.000000 1.000000 -0.000000 0.000000 0.000000 0.000000 0.000000 1.000000</matrix>

 

<visual_scene id="RootNode" name="RootNode">
      <node id="LOD01_BLUEPRINT" name="LOD01_BLUEPRINT">
        <matrix sid="matrix">1.000000 0.000000 0.000000 78.667358 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000</matrix>

 

The file is really too long since I don't know what I'm looking for, but all I can find for differences is the above. (I'm not sure which is which)

Share this post


Link to post
Share on other sites

Ah. Matrices. Thise are the right things, but I have to read up or be informed by someone who can interpret them. Anyone? My guess is that the -1 in the upper one is the cause of the problems. What happens if you remove the - signs?

Share this post


Link to post
Share on other sites

No. I used your matrix in my simple slab mesh and it didn't make any difference (except for rotating it when rezzed). In fact, reading about it, rotations will always produce negative numbers in the matrix. So it isn't that. Back to the drawing board. :matte-motes-crying:

Share this post


Link to post
Share on other sites

The matrix is 

1.0000   0           0          0
0            0           1.0000 0
0           -1.0000 0          0
78.6674 0           0         1.0000

In collada the transformation matrices are in row vector on left -form, so

v' = [x y z 1] * matrix

so this matrix  has translation <78.6674 0 0 > 

and it picks the original Z coordinate as Y and negates it (second column)

and it picks the original  Y coordinate as Z  (third column)

 

 

 

 

 

Share this post


Link to post
Share on other sites

So... that is switching two axes and leaving one untouched..That's mirroring:) It's very possible I did that somewhere in the object. But then there's still the issue with my columns... and I sure didn't mirror anything in those. I'll have a look tomorrow at both and post it here when my brain works again...

Share this post


Link to post
Share on other sites

 

I use this algorithm 
http://en.wikipedia.org/wiki/Quaternions_and_spatial_rotation#Conversion_to_and_from_the_matrix_representation
to switch between collada transformation matrices and second life rotation quaternions, and that algorithm confirms that the transformation matrix in the odd mesh

1 0 0 0
0 0 1 0
0 -1 0 0
78.6674 0 0 1

does not correspond to any rotation + scaling + translation  (as the mirroring turns the right-handed coordinate system to left-handed and you can't rotate the object to flip the handedness), and it might be possible that the second life collada uploader just is not prepared to handle all possible transformations correctly.

 

 

Share this post


Link to post
Share on other sites

hmmm, is this really ment for me Drongle? I don't have any issues with prim weight as far as I can remember.... And I certainly don't remember any cylindrical pillars in any build...

 

About the matrix...uggh, that's YEARS ago since I last saw one... But if you say the matrix shows a mirror action I believe you. I looked at the model however and there is no mirror there, only a rotation. Also looked at my columns that suffer from the LOD change since V3.1.0 and they don't even have a  rotation. I'll try to replicate the bug with another object when I can find some time.

Share this post


Link to post
Share on other sites

"is this really ment for me Drongle?"

Whoops. No. Wrong thread and wrong person! That's what happens if you carry on two conversations at once, I guess. Sorry, I'll delete it and put it where it should have been. :matte-motes-confused:

Share this post


Link to post
Share on other sites

"does not correspond to any rotation + scaling + translation"

My matrix stuff is poor, but I did end up with the same effects you describe; translation along x plus y' = -z ; z' = y. However, drawing that on paper, it seems to be a 90 degree rotation about the x axis, no mirroring. Furthermore, it did work ok when I put that wierd matrix in another dae file, giving that rotation. The translation is lost by the normalisation done by the uploader, I think.

rotation.png

 

 

Share this post


Link to post
Share on other sites

 

/me facepalms 

you are right, disregard all that about mirroring, i had the 4x4 matrix transposed (in column vector on the right form) and it messed up the script to check it.... so the problem is not in the transformation but something else.

 

Share this post


Link to post
Share on other sites

That's the trouble with matrices :matte-motes-confused:. I have to turn off the "Bake matrices" button in the Blender 4.9 exporter so that it does translations and rotations ans scalings that I can understand at a glance.

Share this post


Link to post
Share on other sites

I forgot to mention the rotation in my original model was 90 degrees around x indeed. It's also how the viewer uploads the model, the uploaded mesh rezzes with this rotation aswell. At least I can upload this one correctly now, as you have seen on the test grid, but I'm sure people will run into this again, although probably not many and not often.

The older viewers had no problems with the LOD, they in fact still show the model correctly.

Anyway, half the mystery is solved, but the columns which are behaving similairly, do not have this rotation, I checked and double checked that. So there has to be more to this... The columns have a lathe or revolve or how is it called in other programs modifier for the biggest piece, I don't think I flipped any normals or anything though.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...