Posts: 3,882
Thanks: 9028 in 69 Posts
28 Achievements
Quote: Originally posted by TheSweetSimmer
The poses/animations themselves do have some influence on how much the sim's head turn, which in this case since she's looking to her left in the pose, so it probably will limit how much she can look to her right. Have you also tried removing the disable look ats line or waiting a couple sim minutes before calling it? It could be interrupting the look at function too early so the sim doesn't get enough time to look at something, but this is just speculation based on what I've seen with animations. And about the torso turning, I don't think I've ever seen sims actually turn their body towards something to look at it like in sims 2 and 4, so it might not even be a thing in the game itself, but I might be wrong (hopefully).
|
I was wondering if I should reach out to you about this issue, lol. (Since you're pretty much TS3's queen of animations :p) but thanks for the quick reply!
I think you're right in regard to the way certain poses can be the bottleneck. Though, the reason I thought this may work, is due to the fact that when I've been working on the "OverlayComponent" parts of things (such as changing the facial expressions), and tell it to use, say, the torso bones, it will actually, well, use it as requested.
Though, I think the mistake I made, is that the lookAtManager in some degree uses the overlay component, but is actually its own thing. Meaning that the handling is simply not done the same way as the overlayComponent does.
So, I ran some tests to figure out how much of the API actually triggers the engine's function internally when triggering lookatmanager. I made 2 quick dialogues, where one I grab the OverlayLevels/AwarenessLevel to free the parts that I want having to check the item out, and then another one where I tell it to simply grab the JointFilter i want to use.
And to explain my reasoning of why I think EA has completely abandoned this code and instead doing stuff internally, here are some examples:
1. Variation used: OverlayLevel = All (head, spine and face should move), LookAtJointFilter = Torso
Expected result: Torso rotates somewhat towards the bookcase.
Actual result:
2. Variation used: OverlayLevel = Face, LookAtJointFilter = Eyes.
Expected Result: Eyes try looking at the bookcase, but doesn't move head/torso.
Actual result:
And before you ask, nope! Those are both seperate images
Initially I thought I spotted at least the neck not being moved, but that's actually just wishful thinking.
I've also gone ahead and see if your suggestion disableLookAt() was the issue, but that actually still gave the same result, assuming I added only one like of EnableLookAt() of course.
I tried some other results too, but all gave the same result. Meaning... that all the Look At stuff was once probably pretty versitile, but then EA decided to make the system better by calculating the rotation of the bones internally. That's my guess anyways.
So... I think I will either just accept things right now as they are, or try to see if I can somehow make a similar system myself, with the actual OverlayComponent. In the end, I just want to make sure that poses can pose the way we want to.
So I might turn this into a research thread if I get closer to an answer! In case other people need it... for science!