Smoothing out the angles on a camera
Moderator: InsideQC Admins
5 posts
• Page 1 of 1
Smoothing out the angles on a camera
I set up a cinematic where the camera circles an object while staying pointed towards it. I calculated the angle of the camera by
camera.angles = vectoangles(targ.origin - camera.origin);
where this is updated every cycle of the game, but the change in angle is only changing in whole units and looks really jerky. Is there a way to smooth out the camera angle change or is it some sort of limit of the game. The player view point moves fluid enough so there has to be a way to emulate the smoothness. Any help or ideas.
camera.angles = vectoangles(targ.origin - camera.origin);
where this is updated every cycle of the game, but the change in angle is only changing in whole units and looks really jerky. Is there a way to smooth out the camera angle change or is it some sort of limit of the game. The player view point moves fluid enough so there has to be a way to emulate the smoothness. Any help or ideas.
- Mr Lenguini
- Posts: 7
- Joined: Fri Oct 22, 2004 2:35 am
The problem is Quake tends to send angles to the client (even when you're playing single player it emulates client-server format) as bytes, meaning you can only have 256 possibilities for each of the 3 360-degree angles. This makes things pretty jerky, unfortunately.
Darkplaces I believe has fixed this, and sends large angles by default...? This bug was the bane of existance for a long time for a lot of people, but in DP at least it seems to be fixed. I don't know if I set an option or something.
Darkplaces I believe has fixed this, and sends large angles by default...? This bug was the bane of existance for a long time for a lot of people, but in DP at least it seems to be fixed. I don't know if I set an option or something.
When my computer inevitably explodes and kills me, my cat inherits everything I own. He may be the only one capable of continuing my work.
- Wazat
- Posts: 771
- Joined: Fri Oct 15, 2004 9:50 pm
- Location: Middle 'o the desert, USA
It isn't a bug, it was just compressed because Quake didn't ever have a need for really precise values, so it did it to save on net bandwidth. IMO they should have made SVC_SETANGLE take WriteCoord instead of WriteAngle... 
F. A. Špork, an enlightened nobleman and a great patron of art, had a stately Baroque spa complex built on the banks of the River Labe.
- Sajt
- Posts: 1215
- Joined: Sat Oct 16, 2004 3:39 am
An Old Problem
So what your trying to say is there is absolutely no way around this in regular .qc based quake coding at all, right?
- Mr Lenguini
- Posts: 7
- Joined: Fri Oct 22, 2004 2:35 am
Probably not. Most Quake engines still have the problem with byte-sized angles. As said above, this was a design decision by ID Software, not a bug; however, it's become a major inconvenience now that we've raised the bar in our mods.
The one non-new-engine-solution might be to use the player as the camera... but I think self.fixangle=TRUE; does the same as the setangle writebyte, so perhaps that won't fix it either.
If you can't get DP or the other high-graphics engines to run on your compy, then perhaps Spike has fixed it in FTE? If you're trying to avoid all new engines completely, then I don't know what to tell you.
The one non-new-engine-solution might be to use the player as the camera... but I think self.fixangle=TRUE; does the same as the setangle writebyte, so perhaps that won't fix it either.
If you can't get DP or the other high-graphics engines to run on your compy, then perhaps Spike has fixed it in FTE? If you're trying to avoid all new engines completely, then I don't know what to tell you.
When my computer inevitably explodes and kills me, my cat inherits everything I own. He may be the only one capable of continuing my work.
- Wazat
- Posts: 771
- Joined: Fri Oct 15, 2004 9:50 pm
- Location: Middle 'o the desert, USA
5 posts
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 1 guest