Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/ASTRA228b/Experimental/llms.txt

Use this file to discover all available pages before exploring further.

Astras TurnMod rotates the player’s turn parent around their head position using RotateAround(headPos, Vector3.up, angle), giving you comfortable yaw rotation without physically moving your body. Two distinct modes are available: Smooth Turn, which applies a continuous angular velocity with optional lerp dampening, and Snap Turn, which fires a fixed-angle rotation on a single button press.

Turn Mode Selection

Toggle TM to enable the mod, then choose your mode:
SettingDescription
ST = falseSmooth Turn — continuous rotation while input is held
ST = trueSnap Turn — single fixed rotation on each button press

Smooth Turn Parameters

These parameters are only active when ST is false.
Type: float | Range: 30 – 900 °/sThe target angular velocity in degrees per second. When an input is held, the controller accumulates ±TurnSpeed as the target value (haii). Higher values spin you faster; 30 is a gentle glide while 900 is near-instant.
Type: float | Range: 0 – 5Controls how quickly the actual rotation velocity (TV) catches up to the target (haii) via a Lerp. The lerp speed itself is interpolated: at Smoothnes = 0 the lerp rate is 50 (very snappy), and at Smoothnes = 5 the rate is 2 (very gradual):
// If Smoothnes > 0.01:
TV = Lerp(TV, haii, Mathf.Lerp(50, 2, Smoothnes) * dt);
// Else (Smoothnes ≈ 0):
TV = haii;  // Instant, no easing
Set Smoothnes = 0 for an immediate, frame-accurate response. Raise it toward 5 for a cinematic deceleration curve when you release the input.

Snap Turn Parameters

These parameters are only active when ST is true.
Type: float | Range: 15 – 90°The number of degrees rotated per button press. Each press fires exactly one snap — holding the button does not repeat. Common VR-comfort values are 30°, 45°, and 60°. The direction is determined by which input you press (left turns negative, right turns positive).

How Rotation Is Applied

Both modes rotate around the player’s head rather than the world origin, keeping the camera pivot centred on the player:
pivi.RotateAround(headPos, Vector3.up, TV * dt);   // Smooth Turn
pivi.RotateAround(headPos, Vector3.up, ±SnapAngle); // Snap Turn (rising edge only)
In Snap Turn mode the controller tracks the rising edge of each button press — you must release and re-press to get a second snap. This matches standard VR locomotion conventions and prevents continuous rotation while the button is held.

Getting Started

1

Enable TurnMod

Toggle TM on in the mod window.
2

Choose your mode

Leave ST off for Smooth Turn, or enable it for Snap Turn. Pick the mode that matches your comfort preference.
3

Configure Smooth Turn (if applicable)

Set TurnSpeed to 90–180 for natural movement. Keep Smoothnes at 0 for precision or raise it toward 2–3 for eased deceleration.
4

Configure Snap Turn (if applicable)

Set SnapAngle to 45° as a starting point. Reduce to 30° for finer steps or increase to 60° for faster orientation changes.
5

Bind your inputs

Open the Input Settings tab, assign your left turn input and right turn input, then test in a safe area.

Build docs developers (and LLMs) love