Game Development Community

T3D 1.1 Beta 3 - EyePoint Does Not Update With Player Pose - RESOLVED

by Steve Acaster · in Torque 3D Professional · 10/31/2010 (10:51 pm) · 27 replies

T3D 1.1 beta 3

Win7

Target
player, eyepoint, math

Issue
%player.getEyePoint(); - the eyepoint does not appear to update with the player's stance/pose. So if the player crouches ($mvTriggerCount3++;) any math or vector which uses the EyePoint, will not update to the new eye position and will use the original (standing) eye position. Sometimes, I've also found it stuck in location where it should be in crouch too and not back at root animation/stand pose location.

Repeat
In-game, get the player's eyePoint, then have them crouch and get the player's eyepoint again - notice no difference even though the eyeNode has moved position with the crouch animation.

Suggest
Have the server update the eyePosition correctly with the current position of the eyeNode.

edit
10 April 2011 Looks fixed in 1.1 Preview

Not fixed in 1.1 Final 08 Aug 2011 ... but that could be intentional
Page«First 1 2 Next»
#21
02/06/2011 (10:15 pm)
As for small changes in EyePoint location, are you sure that isn't caused by the recoil/aim push?
if (%this.recoilType !$= "")
      CommandToClient(%obj.client, 'DoRecoil', %this.recoilType);
#22
02/06/2011 (11:08 pm)
With the change Richard suggested:
if(!isGhost())                       // Add this line
      mShapeInstance->animate();        // and this line
everything seems to be working correctly for me.

The eyepoint now starts off with the correct coordinate before shooting, the eyepoint works when crouching and I don't seem to have any issues with the muzzlepoint either.

Thanks Richard.

[edit]
Steve, the starting eyeposition is just wrong but not by much.
I only noticed because I was casting some rays that put a particle effect infront but they were not directly infront until after the first shot.
#23
02/07/2011 (12:39 am)
No thanks A F.

I've tried some other ways but none of them gives the desired result (this part of the engine looks like a maze), so I'll stick with this option until someone else got a better solution
#24
02/07/2011 (12:48 am)
@deepscratch

In updateAnimation() you could use something like this:

if (!isGhost() && mActionAnimation.thread)
{
mShapeInstance->advanceTime(TickSec,mActionAnimation.thread);
mShapeInstance->animate();
}
#25
02/07/2011 (2:48 am)
@Steve & Daniel,
hell yeah, that resource has been in since TGEA!! :)

@Ivan,
yup that did it, thank you so much, you have no idea how long I spent trying to do that!!
#26
10/06/2011 (4:03 pm)
Fixed in 1.2.
#27
10/06/2011 (4:25 pm)
Really? Awww, cool, I'll be able to stop putting my fix in each update. :)
Page«First 1 2 Next»