📄 Super Virtual Joysticks – Documentation
Version: 1.0
Publisher: Solo Studio 54
Unity Version: 2022.3.6f1 or newer
Render Pipeline: Built-in RP
🎮 Overview
Super Virtual Joysticks is a complete plug-and-play virtual joystick system for Unity, ideal for twin-stick shooters, platformers, and mobile games. Includes movement + aim controls, bullet firing system, and juicy visuals.
📁 Folders Overview
- Demo/ – Ready-to-play test scene
- Prefabs/ – Joystick and Bullet prefabs
- Scripts/ – All C# scripts for Joysticks, Player, Bullet
- Sprites/ – PNGs for knobs, bases, and demo visuals
- Documentation/ – This file
🚀 Setup Instructions
- Drag SuperVirtualJoysticks.unitypackage into your project.Import the Package
- Go to Assets/SoloStudio54/SuperVirtualJoysticks/Demo/Demo.unity.Open Demo Scene
- Deadzone and smoothing adjustable in inspector.Customize Joysticks
JoystickBase and JoystickKnob sprites can be changed in the VirtualJoystick component.
Snapping options: None, 4-direction, or 8-direction.
- Bullets are fired from FirePoint and use Bullet.cs logic.Player Setup
Player prefab is controlled via PlayerController.cs
Movement and aiming are handled independently using two joysticks.
- Knob squashes and stretches when dragged.FX & Juice
Bullets include optional TrailRenderer for visual polish.
🎨 Changing Sprites
- This allows multiple themes and easy prefab reuse.In the VirtualJoystick component (on the joystick GameObject):
Set Joystick Base Sprite and Joystick Knob Sprite using Sprite fields (not SpriteRenderer directly).
🎯 Snap Modes
- None: Full analog 360° control
- Four: Locks to up/down/left/right
- Eight: Adds diagonal movement (NW/NE/SW/SE)
🧠 Script Reference
VirtualJoystick.cs
Handles input, direction vector, snapping, juice scaling.
PlayerController.cs
Uses two joysticks to move and rotate the player. Fires bullets with fire rate control.
Bullet.cs
Controls bullet movement and destroys them off-screen.
✅ Features Summary
- 🕹️ Dual Joystick system (move + aim)
- 🎯 Snap Modes: None, 4, 8 directions
- 🔥 Bullet firing with trail FX
- 🧃 Juice: squishy knob scale on drag
- 📱 Mobile-ready with touch input
- 🎨 Themeable joystick sprites
- 💾 Clean, modular C# code
- 🧩 Plug-and-play – drop it into your own project
🔧 Notes
- Best used in Canvas → Screen Space – Overlay for UI accuracy.
- Adjust Joystick Radius, Dead Zone, and Smoothing Speed for gameplay feel.