Unity Game SDKv0.5.1Download SDK
RUEN

Practical recipes

Small solutions for common integration tasks.

Last Canvas marker

void OnHit(VorivoxHit hit)
{
    marker.anchoredPosition = hit.ToCanvasLocal(playfield);
    marker.gameObject.SetActive(true);
}

Duplicate shot protection

readonly HashSet<string> processed = new();
void OnHit(VorivoxHit hit)
{
    if (!processed.Add(hit.ShotId)) return;
    ResolveShot(hit);
}

Non-blocking countdown

async Task BeginAsync(VorivoxSessionStart start)
{
    await countdown.ShowAsync(start.CountdownMs);
    round.EnableInput();
}

Focus loss

Wait for session.pause with reason focus_lost; freeze timers and show a neutral system overlay.

Result lighting

await sdk.TriggerLedAsync(points > 0 ? "HIT" : "MISS");

Check sdk.Capabilities.LedOverride before advanced override modes.