Smoother monster interpolation
Moderator: GZDoom Developers
Smoother monster interpolation
Would it be possible to have a third option for monster interpolation, and have it be interpolated every frame? The current interpolation isn't too noticeable, as it still looks choppy. I know JDoom interpolates it as smoothly as possible, so I know it can be done.
- Project Shadowcat
- Posts: 9369
- Joined: Thu Jul 14, 2005 8:33 pm
- Preferred Pronouns: They/Them
- Operating System Version (Optional): Windows 11
- Graphics Processor: nVidia with Vulkan support
- Location: Blacksburg, SC USA
- Contact:
Re: Smoother monster interpolation
Isn't there already an option for that?
- NeuralStunner
-
- Posts: 12328
- Joined: Tue Jul 21, 2009 12:04 pm
- Preferred Pronouns: No Preference
- Operating System Version (Optional): Windows 11
- Graphics Processor: nVidia with Vulkan support
- Location: capital N, capital S, no space
- Contact:
Re: Smoother monster interpolation
Personalyl, I think it looks fine. 

- chopkinsca
- Posts: 1325
- Joined: Thu Dec 11, 2003 5:03 pm
Re: Smoother monster interpolation
Ditto. I never noticed the difference in JDoom's interpolation option compared to being on or off.NeuralStunner wrote:Personalyl, I think it looks fine.
Re: Smoother monster interpolation
Huh, I thought it looked rather choppy. Maybe not as much as without it, but it appears to just be interpolating it to be twice as smooth, not as smooth as the framerate allows.
Re: Smoother monster interpolation
Interpolation is only for inter-tic movement. Since (most) monsters don't move every tic, interpolating their movements won't work.
Re: Smoother monster interpolation
I don't supposed you could do this manually by making the monsters movement frames call A_Chase every 1-tic.
Say a monster has something like this for the chase with a speed property of 32:
MONS AABBCCDD 4 A_Chase
The monster moves 32 units every 4 tics. I'm guessing this is what you mean by non-smooth movement, that the monster jumps 32-units every time 4 tics is counted.
You could just do this:
MONS AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDD 1 A_Chase; and change the speed to 8. Now the movement should be more smooth, although still limited. But I'm guessing the monster will randomly change directions a lot more with something like this? I'm not sure if A_Chase also causes the monster to change directions.
Say a monster has something like this for the chase with a speed property of 32:
MONS AABBCCDD 4 A_Chase
The monster moves 32 units every 4 tics. I'm guessing this is what you mean by non-smooth movement, that the monster jumps 32-units every time 4 tics is counted.
You could just do this:
MONS AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDD 1 A_Chase; and change the speed to 8. Now the movement should be more smooth, although still limited. But I'm guessing the monster will randomly change directions a lot more with something like this? I'm not sure if A_Chase also causes the monster to change directions.
- Graf Zahl
- Lead GZDoom+Raze Developer
- Posts: 49252
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
Re: Smoother monster interpolation
Not that easy. If you don't use specific parameters so that attacks are only checked each 4th frame the monster will become far more aggressive.
- Xtyfe
- Posts: 1490
- Joined: Fri Dec 14, 2007 6:29 pm
- Preferred Pronouns: He/Him
- Operating System Version (Optional): Windows 11
- Graphics Processor: nVidia with Vulkan support
Re: Smoother monster interpolation
Interesting, so would something like this work?Graf Zahl wrote:Not that easy. If you don't use specific parameters so that attacks are only checked each 4th frame the monster will become far more aggressive.
Code: Select all
See:
POSS AAA 2 A_Chase ("", "")
POSS A 2 A_Chase ("", "Missile")
POSS BBB 2 A_Chase ("", "")
POSS B 2 A_Chase ("", "Missile")
POSS CCC 2 A_Chase ("", "")
POSS C 2 A_Chase ("", "Missile")
POSS DDD 2 A_Chase ("", "")
POSS D 2 A_Chase ("", "Missile")
Loop