[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