[sldev] Request for help with modifying client camera behavior

Kelly Linden kelly at lindenlab.com
Fri Aug 29 08:53:37 PDT 2008


Argent Stonecutter wrote:
> On 2008-08-28, at 06:41, Tofu Linden wrote:
>> That's actually a server-side issue (the camera ray collision is mostly
>> handled by the physics engine).  It's recently been fixed internally,
>> though I'm fuzzy on when it will roll-out.
>
> I have often wondered why SL does that ... keeping the camera on the
> same side as "big enough" prims ... instead of doing what many other
> games do and leaving the camera free to move but hiding the objects
> that would obscure the avatar.
>
>
I've seen games that do both.  Most games that come to my mind that hide
objects between the camera and the avatar are isometric top down games
where there isn't a whole lot of camera freedom.  Most first or third
person games I'm familiar with move the camera.  I am admittedly not
familiar with a whole lot of games at this point (I was at one point, I
swear!).

SL's camera system is really not great and makes indoor spaces usually
unpleasant (unless they are really large indoor spaces).  I would be
very interested in seeing a test implementation that hid the objects as
you describe.  The server side part of camera collision is handled by
the server telling the viewer a plane that it should stay in front of.  
llviewermessage.cpp, process_camera_constraint around line 3657 is where
the viewer receives that message.  Simply commenting out the
gAgent.setCameraCollidePlane call should be enough to disable the server
side hint completely.

 - Kelly



More information about the SLDev mailing list