Class ClientCameraSettings
Camera preferences the player owns: how far the mouse turns the view, and how its edges are smoothed.
public static class ClientCameraSettings
- Inheritance
-
ClientCameraSettings
- Inherited Members
Remarks
Separate from ClientDisplaySettings because it writes to a scene object rather
than to Unity's global state, and that object does not exist for the whole session. The
camera lives in ClientPreboot and is picked up by KCCPlayer when it takes ownership,
so a value applied at boot has to survive until then — it does, because
RotationSpeed is a plain field on a component that outlives the
scene loads between boot and play.
Sensitivity only has an observable effect while the cursor is locked, which is the state the mouse drives the camera in. With mouse mode on the cursor is free and the camera does not turn at all, so the slider looks broken if tested there — it is not, there is simply no look input to scale.
Fields
DefaultAntialiasing
Edge smoothing when nothing has been chosen.
public const ClientCameraSettings.AntialiasingOption DefaultAntialiasing = Balanced
Field Value
Remarks
SMAA rather than Off. The camera ships with antialiasing disabled, which is what made character silhouettes visibly stair-stepped; a default that looks broken is a poor one. Chosen over FXAA because it keeps texture detail instead of softening the whole frame, and over TAA because TAA ghosts on a camera that orbits the player.
DefaultLookSensitivity
Sensitivity when nothing has been chosen.
public const float DefaultLookSensitivity = 0.5
Field Value
Remarks
Half, not the 1.0 authored on the camera. That value turns the view faster than anyone tested comfortable — a new player would have to find this slider before the game felt right, which is the wrong way round for a default. Only players who have never touched the slider are affected; a saved value always wins.
MaximumLookSensitivity
Fastest the view may turn.
public const float MaximumLookSensitivity = 1
Field Value
Remarks
One, down from an initial five. The camera's authored 1.0 already turns faster than comfortable, so everything above it was travel spent on speeds nobody picks — and it crammed the usable band into the slider's first tenth. The range a control offers is a claim about where the answer lies; this one now spans it rather than hiding it.
MinimumLookSensitivity
Slowest the view may turn. Above zero: zero is a camera that cannot be moved.
public const float MinimumLookSensitivity = 0.1
Field Value
Methods
ApplyAntialiasing(AntialiasingOption)
Writes an antialiasing mode onto the camera.
public static bool ApplyAntialiasing(ClientCameraSettings.AntialiasingOption option)
Parameters
optionClientCameraSettings.AntialiasingOptionThe mode to apply. An unrecognised value falls back to the default.
Returns
- bool
trueif a camera received it;falseif there is none yet.
ApplyLookSensitivity(float)
Writes a look sensitivity onto the camera and remembers it.
public static bool ApplyLookSensitivity(float value)
Parameters
valuefloatSensitivity multiplier. Clamped to the supported range.
Returns
- bool
trueif a camera received the value;falseif there is none yet.
Remarks
Clamped rather than trusted. The value is a float in a text file the player can edit, and it multiplies raw mouse delta: a large one makes the view unusable at exactly the moment the player would need to reach the menu to put it back, and zero makes the camera immovable.
ApplySaved()
Applies the stored look sensitivity to the live camera.
public static void ApplySaved()
Remarks
Reports what it did, at Debug. This apply is the one that decides whether a player's saved sensitivity is honoured, and it previously failed in total silence: the value was stored, the options panel displayed it, and the camera ran at its authored speed for the whole session with nothing anywhere saying so. A line here is what turns "the slider feels wrong" from a guess into something answerable from a log.
Only this path logs. ApplyLookSensitivity is also called for every value change while the player drags the slider, which would be pure noise.
ApplySavedAntialiasing()
Applies the stored antialiasing mode to the live camera.
public static void ApplySavedAntialiasing()