[RESOLVED] Minor Issue - Corpse No Fade Out
by Steve Acaster · in Torque 3D Professional · 10/01/2009 (7:39 pm) · 16 replies
Hardly a biggy, but I noticed corpses don't fade out anymore, they just vanish suddenly. Not quite as aesthetic.
Resolved as of 1.1beta1
Resolved as of 1.1beta1
About the author
One Bloke ... In His Bedroom ... Making Indie Games ...
#2
10/01/2009 (11:04 pm)
Yep, startFade doesn't work on the player anymore for some reason...
#3
However, the Hidden is used as well now, and there is a setmaskbits in the hidden function that sets cloak. I'm wondering if there is something with these two values that's causing the fade out to glitch? Previously it was only the cloak mask with the fade out.
10/02/2009 (2:04 pm)
I tried looking into this last night, and I couldn't find out why it's not working. I did a diff against B5 and I notice that CloakMask was changed to HideCloakMask. This shouldn't be a problem it appears to be changed everywhere.However, the Hidden is used as well now, and there is a setmaskbits in the hidden function that sets cloak. I'm wondering if there is something with these two values that's causing the fade out to glitch? Previously it was only the cloak mask with the fade out.
#4
Fading still works for other things though, so this is odd.
10/02/2009 (2:53 pm)
Strange that the CloakMask was changed... maybe because it didn't work itself previously -- in fact I had actually been using startFade() in another situation just because "cloaking" didn't fully work for the player.Fading still works for other things though, so this is odd.
#5
The (likely) reason it's broken because it's transmitting the hidden flag over the network now (hence the name change to HideCloakMask). This came about because I was fixing some problem with setHidden* which was using/abusing the cloaking for its purposes.
For a temp fix try killing the hidden flag transmission from ShapeBase's net code.
I will revisit my change and correct this for the upcoming hotfix.
* Be aware that this function is a complete misnomer. It entirely removes the given object from the simulation rather than hiding it in some way.
10/02/2009 (3:21 pm)
I think I am to blame for this. Apparently, I fixed a smaller issue there and brought about a bigger issue with it.The (likely) reason it's broken because it's transmitting the hidden flag over the network now (hence the name change to HideCloakMask). This came about because I was fixing some problem with setHidden* which was using/abusing the cloaking for its purposes.
For a temp fix try killing the hidden flag transmission from ShapeBase's net code.
I will revisit my change and correct this for the upcoming hotfix.
* Be aware that this function is a complete misnomer. It entirely removes the given object from the simulation rather than hiding it in some way.
#6
Thanks Rene.
I'll try messing with this tonight and if I come up with a workaround post it here.
10/02/2009 (3:23 pm)
I can't believe I didn't stumble across that in my random poking and prodding last night. That was the direction I was heading.Thanks Rene.
I'll try messing with this tonight and if I come up with a workaround post it here.
#8
@Brett
Have you given removing the hidden flag transmission a shot? Did it fix the problem?
@Steve
Hehe.
10/05/2009 (5:57 pm)
@Brett
Have you given removing the hidden flag transmission a shot? Did it fix the problem?
@Steve
Hehe.
#9
Removing mHidden from the ShapeBase Pack/Unpack did not fix the issue. Sorry I didn't follow up sooner.
Edit-
AdvanceTime and ProcessTick have different values for mFadeVal.
ShapeBase::startFade(1.000000, 0.000000, true); mFadeTime=1.000000 mFadeDelay=0.000000 mFadeOut=true mFadeVal=1.000000
processTick() Fading mFadeElapsedTime=0.032000 mFadeOut=true mFadeVal=1.000000
AdvanceTime() Fading mElapsedTime=0.017000 mFadeOut=true mFadeVal=0.983000
AdvanceTime() Fading mElapsedTime=0.035000 mFadeOut=true mFadeVal=0.965000
processTick() Fading mFadeElapsedTime=0.064000 mFadeOut=true mFadeVal=1.000000
AdvanceTime() Fading mElapsedTime=0.053000 mFadeOut=true mFadeVal=0.947000
processTick() Fading mFadeElapsedTime=0.096000 mFadeOut=true mFadeVal=1.000000
AdvanceTime() Fading mElapsedTime=0.070000 mFadeOut=true mFadeVal=0.930000
AdvanceTime() Fading mElapsedTime=0.088000 mFadeOut=true mFadeVal=0.912000
processTick() Fading mFadeElapsedTime=0.128000 mFadeOut=true mFadeVal=1.000000
Has this fade code always worked? It seems overly complicated. I'm having a hard time determining what is happening here.
10/05/2009 (8:18 pm)
@ReneRemoving mHidden from the ShapeBase Pack/Unpack did not fix the issue. Sorry I didn't follow up sooner.
Edit-
AdvanceTime and ProcessTick have different values for mFadeVal.
ShapeBase::startFade(1.000000, 0.000000, true); mFadeTime=1.000000 mFadeDelay=0.000000 mFadeOut=true mFadeVal=1.000000
processTick() Fading mFadeElapsedTime=0.032000 mFadeOut=true mFadeVal=1.000000
AdvanceTime() Fading mElapsedTime=0.017000 mFadeOut=true mFadeVal=0.983000
AdvanceTime() Fading mElapsedTime=0.035000 mFadeOut=true mFadeVal=0.965000
processTick() Fading mFadeElapsedTime=0.064000 mFadeOut=true mFadeVal=1.000000
AdvanceTime() Fading mElapsedTime=0.053000 mFadeOut=true mFadeVal=0.947000
processTick() Fading mFadeElapsedTime=0.096000 mFadeOut=true mFadeVal=1.000000
AdvanceTime() Fading mElapsedTime=0.070000 mFadeOut=true mFadeVal=0.930000
AdvanceTime() Fading mElapsedTime=0.088000 mFadeOut=true mFadeVal=0.912000
processTick() Fading mFadeElapsedTime=0.128000 mFadeOut=true mFadeVal=1.000000
Has this fade code always worked? It seems overly complicated. I'm having a hard time determining what is happening here.
#10
Ok, then it clearly deserves to be JIRA'd: THREED-756.
Will look into this.
10/06/2009 (4:19 am)
Ok, then it clearly deserves to be JIRA'd: THREED-756.
Will look into this.
#11
Maybe it has always been this way(I am just starting with Torque 3D), but for my purposes I need to have materials with shadows and no transparency originally, and be able to fade them out later. I am going to try to use a seperate fade material and use the ShapeBase::changeMaterial function before startFade, but the comments in the .cpp file suggest this function may be buggy
//--------------------------
//shapeBase.cpp
// Warning, right now this only sort of works. It doesn't do a live update like it should.
ConsoleMethod( ShapeBase, changeMaterial, void, 5, 5, "(mapTo, fromMaterial, ToMaterial)")
//-------------------------------
Any other ideas on how to fade out objects that don't have LerpAlpha blending at runtime?
11/09/2009 (7:39 pm)
It may be a related issue but the ShapeBase startFade function seems to only effect materials set to LerpAlpha or addAlpha blending. Maybe it has always been this way(I am just starting with Torque 3D), but for my purposes I need to have materials with shadows and no transparency originally, and be able to fade them out later. I am going to try to use a seperate fade material and use the ShapeBase::changeMaterial function before startFade, but the comments in the .cpp file suggest this function may be buggy
//--------------------------
//shapeBase.cpp
// Warning, right now this only sort of works. It doesn't do a live update like it should.
ConsoleMethod( ShapeBase, changeMaterial, void, 5, 5, "(mapTo, fromMaterial, ToMaterial)")
//-------------------------------
Any other ideas on how to fade out objects that don't have LerpAlpha blending at runtime?
#12
I think this is the same problem:
www.garagegames.com/community/forums/viewthread/105059
11/10/2009 (2:35 am)
@SteveI think this is the same problem:
www.garagegames.com/community/forums/viewthread/105059
#13
11/10/2009 (11:51 am)
I did input the code, but don't see any difference. Rather than a fade it's a flash-vanish at the start of the fade time.
#14
06/15/2010 (8:15 pm)
Logged: TQA-398
#15
06/16/2010 (4:39 am)
Oops, must have missed this on my last forum post clean up trawl --- fixed in 1.1beta1. And so moving to resolved.
#16
08/02/2010 (5:23 pm)
Fixed in 1.1 Beta 2
Associate Tom Spilman
Sickhead Games