Inside3D!
     

Smoothing out the angles on a camera

 
Post new topic   Reply to topic    Inside3d Forums Forum Index -> QuakeC Programming
View previous topic :: View next topic  
Author Message
Mr Lenguini



Joined: 22 Oct 2004
Posts: 7

PostPosted: Sun Jan 09, 2005 2:46 pm    Post subject: Smoothing out the angles on a camera Reply with quote

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.
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address
Wazat



Joined: 15 Oct 2004
Posts: 732
Location: Middle 'o the desert, USA

PostPosted: Sun Jan 09, 2005 6:38 pm    Post subject: Reply with quote

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.
_________________
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.
Back to top
View user's profile Send private message MSN Messenger
Sajt



Joined: 16 Oct 2004
Posts: 1026

PostPosted: Sun Jan 09, 2005 9:03 pm    Post subject: Reply with quote

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... Smile
_________________
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.
Back to top
View user's profile Send private message
Mr Lenguini



Joined: 22 Oct 2004
Posts: 7

PostPosted: Mon Jan 10, 2005 3:17 am    Post subject: An Old Problem Reply with quote

So what your trying to say is there is absolutely no way around this in regular .qc based quake coding at all, right?
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address
Wazat



Joined: 15 Oct 2004
Posts: 732
Location: Middle 'o the desert, USA

PostPosted: Mon Jan 10, 2005 4:30 am    Post subject: Reply with quote

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. Sad

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. Sad
_________________
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.
Back to top
View user's profile Send private message MSN Messenger
Display posts from previous:   
Post new topic   Reply to topic    Inside3d Forums Forum Index -> QuakeC Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2004 phpBB Group