[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4787: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4789: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4790: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4791: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
InsideQC Forums • View topic - Why chase_active 1 is a hack ...

Why chase_active 1 is a hack ...

Discuss programming topics for the various GPL'd game engine sources.

Moderator: InsideQC Admins

Why chase_active 1 is a hack ...

Postby Baker » Thu Jul 12, 2012 12:01 am

Chase_active 1 is a cool feature, but it isn't "right".

Depending on the settings, the chase camera might not be in the same map leaf as the actual player location.

The server uses the player location to determine what entities are visible using the map leaf of the player location. So the point of view of a chase camera may not show all the actual visible entities because the server didn't send entities visible from the chase camera location.

I'm just pointing this out, I've been working through client and server visibility changes lately with some bizarre ideas I really hope to have done (and released) by Friday. Working through client and server visibility is somewhat of a pain if you want to change the rules just a little.
The night is young. How else can I annoy the world before sunsrise? 8) Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
User avatar
Baker
 
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Re: Why chase_active 1 is a hack ...

Postby mh » Thu Jul 12, 2012 12:20 am

I've been aware of this one for a while. It's not line-of-sight visiblity any more either so sooner or later it's also going to break on SV_VisibleToClient.

Because of this and because it's a hack to begin with it's in my "won't fix" bucket.
User avatar
mh
 
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Re: Why chase_active 1 is a hack ...

Postby Spike » Thu Jul 12, 2012 3:05 am

chase_active is one of the cvars that I never reimplemented in fte (doesn't exist in quakeworld). noone has ever complained about that.
in most nq engines its too flaky to be a serious feature, what with the whole camera-just-went-into-a-wall thing. its probably okay on a banshee though, which had a near clip plane at 0.
there's enough chasecam mods that a chasecam built into the engine is somewhat redundant.
however, even those casecam mods do not center the pvs on the correct point - quake doesn't provide a way to change the pvs origin without also moving the player for it (which would break player physics, well, you could work around that, but gah!).
One issue with chase_active is that you can swivel around the player pretty fast. You'd need a really large pvs sphere to encompas every single possibility.

I don't care about chase_active in any way, but I do care about svc_setview, and with svc_setview the entity is fully known to the server. no issues with the player changing angles really fast... other than latency.
.
Spike
 
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK

Re: Why chase_active 1 is a hack ...

Postby r00k » Thu Jul 12, 2012 5:09 pm

I agree, if you are making a singleplayer mod, in QuakeC, create an entity behind the player,use SVC_SETVIEWPORT set to that ent (only once), check for world collisions, update the ent's position. Online, though, its affected by latency. Doing it engine side, obv is faster cause you dont have to wait for the server to respond with your new origin.

IMHO what is broken with Chase_active and the visible to clients to me is actually an anti-cheat measure, as standing at a corner and using chase_active to view around it with out an opponent seeing you.
r00k
 
Posts: 1111
Joined: Sat Nov 13, 2004 10:39 pm

Re: Why chase_active 1 is a hack ...

Postby Cobalt » Sat Jul 26, 2014 5:56 pm

It has its uses from dev standpoint. I have it bound to my mousebuttons and its a fast way to get a real perspective on the player model if you are say in a listen mode server as first player, testing your mod. If for example you are experimenting with new animation frames and want to see if your QC is doing them right in game.
User avatar
Cobalt
 
Posts: 445
Joined: Wed Jun 10, 2009 2:58 am
Location: New England, USA

Re: Why chase_active 1 is a hack ...

Postby Spike » Sat Jul 26, 2014 9:58 pm

personally I tend to use r_mirroralpha for stuff like that. whatever works really.

csqc can position the camera whereever it wants (main view or sub view), and flag the camera's entity (read: the player) as rf_externalmodel.
its more tricky when the csqc doesn't have ownership of the player's entity of course - which is what fte's VF_VIEWENTITY hack thing does (strips out RF_VIEWMODEL entities and hacks RF_EXTERNALMODEL flags to the new ent). of course, this also avoids calling addentities again for sub views too (assuming its a regular non-radar view or whatever), and can give a noticable framerate boost thanks to the reduced qc instructions.
.
Spike
 
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK

Re: Why chase_active 1 is a hack ...

Postby mankrip » Sun Jul 27, 2014 11:22 pm

Another reason for it to be a hack: Since it's not in the server messages, it's not saved in demos, and this breaks compatibility with mods that aren't supposed to have a third person view (or that have their own QC camera code).
Ph'nglui mglw'nafh mankrip Hell's end wgah'nagl fhtagn.
==-=-=-=-=-=-=-=-=-=-==
/ /
User avatar
mankrip
 
Posts: 915
Joined: Fri Jul 04, 2008 3:02 am


Return to Engine Programming

Who is online

Users browsing this forum: No registered users and 2 guests