Face-me Components Rotating Unexpectedly
-
Yes, I see the same issue with the file you uploaded. For whatever they are worth, some random observations:
Though the trees are "face me" they really don't look like they are flat to the viewport. Their bounding boxes certainly aren't. Also, the bounding boxes are quite large compared to the tree, as if there is some hidden or minuscule geometry in there somewhere, though I can't find any.
They are nested inside components, so I tried exploding the components. That reduced the bounding boxes to a tight 2D fit, but still they aren't oriented flat to the viewport and still if you find a malignant viewpoint they will tumble.
While they are undergoing weird gymnastics, I can't select any of the offending trees by clicking on their current view location, but they select if I click in open air where they would be if upright. After I exploded the components, if I click on a rotated tree, it immediately snaps back upright!
The effect is quite sensitive to exactly where you orbit, almost as if there is a "gimbal lock" sort of singularity affecting the transformations that only happens at certain view directions.
All this makes me suspect there really is a nasty corner-case bug in how the transformations for face-me components are managed.
-
@slbaumgartner said:
Yes, I see the same issue with the file you uploaded. For whatever they are worth, some random observations:
Though the trees are "face me" they really don't look like they are flat to the viewport. Their bounding boxes certainly aren't. Also, the bounding boxes are quite large compared to the tree, as if there is some hidden or minuscule geometry in there somewhere, though I can't find any.
They are nested inside components, so I tried exploding the components. That reduced the bounding boxes to a tight 2D fit, but still they aren't oriented flat to the viewport and still if you find a malignant viewpoint they will tumble.
While they are undergoing weird gymnastics, I can't select any of the offending trees by clicking on their current view location, but they select if I click in open air where they would be if upright. After I exploded the components, if I click on a rotated tree, it immediately snaps back upright!
The effect is quite sensitive to exactly where you orbit, almost as if there is a "gimbal lock" sort of singularity affecting the transformations that only happens at certain view directions.
All this makes me suspect there really is a nasty corner-case bug in how the transformations for face-me components are managed.
1 I think that the reason why a bounding box of the simple component is bigger than you'd expect probably has to do something with anticipation of rotation of the face-me tree which is inside.
2 I also noticed that thing with clicking the air where the upright tree should be but it isn't when starts its gymnastics. Curious, isn't it?
3 slbaumgartner, have you checked why shadows of some faces are not cast though they should?
-
@slbaumgartner said:
....
All this makes me suspect there really is a nasty corner-case bug in how the transformations for face-me components are managed.It´s a nightmare and almost as if having drunk too much when orbiting this model
At first I thought it had something to do with mirrored components but correcting thad didn't do the trick.
I haven´t found the exact cause of the issue but kept selecting malicious trees one by one > right clicking them > select Reset Scale and/or Reset Skew until all of them obeyed the orbit tool as should.
I would sugguest to recreate the tree component from raw geometry (=explode>explode>explode....till raw) and replace all of these trees (through the 'Component' browser) by the new one.
-
@aureus said:
3 slbaumgartner, have you checked why shadows of some faces are not cast though they should?
I poked around a bit and found that if you check Edge shadows, those do appear and they don't participate in the gymnastics. But I haven't found a reason why the Faces aren't casting shadows.
Along the way I noticed that this model is about 200m below the red-green plane of your model. I don't think that affects the flopping and shadows issues, but was surprised that you are modeling a canyon
Bottom line: somewhere along your process for creating this you stepped through a portal into the Twilight Zone.
-
If you look the first GIF file I uploaded you'll see that one face-me tree is acting weird even though it's only a couple of metres distant from the origin of the model (which I deleted). So I think that having the origin distant from the trees cannot be the cause for this behaviour. At least not in this situation.
After all, I think that big distances are not relevant per se, but only in relation to the size of your entities. In the case of my main model (which is big and complex), the distances are big but I don't have microscopic details. Also I didn't have any other problem with it prior creating these face-me trees.
And not only that but it appears that only one specific tree type is from some reason problematic: one of those two linden trees. I made two linden tree types and one of them decided to dance.
My new guess is that this has to do something with the way I scaled those face-me trees or the way I made unique one of the instances of that problematic linden type, which I then copied all around the site and now some of them refuse to behave nicely.As for the missing shadows...this issue was present on different tree types. I solved it in an unusual way: simply by changing a bit the RGB value of the material applied to the faces which refused to cast shadows. When I changed back to the old RGB value shadows remained. It's enigma to me.
Twillight Zone, yes.
-
Face Me Trees Behaving Weird Again_mac1.skpIt appears resetting of scale and skew on the ones with problems make them perform as expected. More test needs to be done , was wrong once already
BTW it sounds like you are going to trouble not needed. The small circles can be used as proxies, you can then replace them with a target tree ( you select the proxies and then target tree in component browser, then select replace selected. Hope our friends have not changed this been several years ? ) and they will be copied in to the proxies scale and its axis aligned to the proxies.
This file simplifies you op model, I used all same trees, randomly select some trees, open component browser, select a replacement tree, it could be a motorcycle if you want. Click it an select replace selected see what you get. -
What I have done when creating my tree collection and placing it in my model can be seen in the gifs below. This time I made the circles bigger so that one can see them more easily.
![At one point I decide to replace one tree type with some other. I just delete one face-me tree type and insert a new one. Since the "circle + tree" component has been already scaled I don't have to repeat that process. The GIF shows they are properly scaled.](/uploads/imported_attachments/QX8G_Ivedonethis02.gif "At one point I decide to replace one tree type with some other. I just delete one face-me tree type and insert a new one. Since the "circle + tree" component has been already scaled I don't have to repeat that process. The GIF shows they are properly scaled.")
-
This was done probably in time it takes for you to do 1 tree almost. Suggest you are stove piped. There are two cases where one type tree was located at verties of rec with random rotation and scaling of 1 to 0.5, second case was trees form you model BTW copied along a Bezier curve and then a few selected ones replaced with different type tree. This was done using a plugin called comp spray plugin available at plugin store.
I have tried and done
-
Well, mac 1,
I'm sure you've realized that when you pick a problematic component and reload its face-me sub-component by replacing it with some other face-me component such are native SU characters...the behaviour remains the same (see the image below).
However if you reload a whole component (like Derrick) instead of "circle+face-me tree" component then there's no silly movements.
This will remain some kind of mystery.
Eventually I had to put new trees manually on the same location, one by one. So far new trees are OK.
-
Face Me Trees Behaving Weird Again_mac1A.skp
Very condescending and presumptuous comment especially when you have not tried the solution presented before I posted, it is not just replacement=> read the post! Here is the skp model I made before posting the picture. -
I simply realized that in your experiment you used the tree type that wasn't problematic at all so what you solved had been already solved.
-
Making assumptions is a basic voliation of general approaches to trouble shooting.
Will try one more time, take the model you posted above and orbit until things go crazy, select one of those, look at the out liner that will show you which instance it is, select edit component and you should see all the instances of that definition selected in the out liner, select reset skew, that will change all the instances since you are in the edit mode. Now try the orbit again and you should see the problem is gone for that definition. Just to be on the safe since I think I exploded the lower level entity in your nested model so you have one so program deals with just the one item and possible different axis location.
The question is how did the skew happen?? -
@mac1 said:
Making assumptions is a basic voliation of general approaches to trouble shooting.
Cheap philosophy is of no help here.
It won't make any serious contribution to this thread. -
@mac1 said:
...
The question is how did the skew happen??Chris explains how to create one here...
[web 100%,400:8geuufsp]http://sketchucation.com/forums/viewtopic.php?f=15&t=17375#p139176[/web:8geuufsp]john
-
Hi driven,
I see there's an old thread about skewing components. Very good.
I made a couple of pretty detailed descriptions (with images included) what I did when creating those components and from them it's obvious I could accidentally make some skewed components (as I had that component inside component story + flipping). The fact that some trees were skewed didn't bother me as trees are in nature skewed anyway, in some sense. I didn't even notice some are skewed. And after all, visually they looked OK. The problem occurred when some trees started to rotate in a weird way.And what's even more strange is that...now I cannot make them 'dance' by repeating the same process.
One thing from the thread you posted: Chris explained how to create a skewed component by rotating the inner component and scaling non-uniformly the outer one. I remember I used a flipping method (and maybe in one case I flipped the sub-component) as there's no point in rotating a face-me component.
Yet, whatever I do now the trees behave normally.I replaced ill-behaving tree components with some other trees that used to be OK and then edited them to my liking. I did this manually not by reloading. Now all the trees behave as expected even though some of them are still skewed!
So this is the catch:
- It's not the distance of the origin of my main model as trees rotating in a weird way do so even when they are a couple of metres distant from the origin which you can see if you import them into a new file.
- Those ones which used to behave unexpectedly were skewed but not all of my skewed trees behave like that.
- I cannot produce such behaviour by will nor the others who tried to do so.
That's why I wrote it looks like this will remain some kind of mystery.
I solved the problem by replacing problematic trees with some which are not but I don't know what actually went wrong.
What?
And why? -
@aureus said:
@mac1 said:
Making assumptions is a basic voliation of general approaches to trouble shooting.
Cheap philosophy is of no help here.
It won't make any serious contribution to this thread.Trouble shooting to help NSA and DOD that was a theme always in our minds and you see that same from folks from the FAA during accident investigations. I do not think they think it is cheap approach and we all have a tendency to fall in that trap that can lead one astray. So it is best to not make statements like made here in.
Advertisement