How-To Guides
Task-oriented guides for solving specific problems. Each guide focuses on one topic and assumes you already have a project set up. If you're new, start with Tutorials instead.
Getting Started
- Install for Unity - Unity integration guide
- Install for Blender - Blender add-on guide
- Use with three.js / Web - Vanilla JS, frameworks, and three.js integration
Built-in Components
- Camera Controls (OrbitControls) - Navigate 3D scenes
- Drag Objects (DragControls) - Drag with mouse, touch, or VR
- Scene Switcher - Load and switch glTF content
- UI Text - Spatial text with custom fonts
- Video Player - Play videos in 3D
- Scroll Follow - Scroll-based animations
- Duplicatable - Spawn object copies
- Contact Shadows - Realistic ground shadows
- Cursor Follow - Track mouse/touch position
- Drop Listener - Drag and drop files
XR (AR & VR)
- WebXR Overview - AR and VR development guide
- VR Performance Optimization - Profiling, bottlenecks, Quest tips
- iOS WebXR Support - Native iOS WebXR via App Clips
- Image Tracking - AR image tracking
- Everywhere Actions - Cross-platform interactions (iOS QuickLook)
Scripting & Interaction
- Create Components - Write custom TypeScript components
- Use Lifecycle Hooks - awake, start, update, and more
- Use Coroutines - Time-based sequences and delays
- Handle User Input - Mouse, touch, keyboard, VR controllers
- Perform Raycasting - Detect objects and hit points
- Use Physics - Rigidbodies, forces, collisions, triggers — powered by Rapier
- Accessibility - Make 3D scenes accessible to screen readers and assistive technology
- Detect Mobile Devices - Platform detection
Networking & Multiplayer
- Networking Overview - Multiplayer guide
- Set Up Networking - Quick start (5 minutes)
- Sync Component State - Automatic networking with @syncField
- Voice Chat (VoIP) - Built-in WebRTC voice chat with spatial audio
- Manual Networking - Custom messages
- Custom Servers - Self-hosted infrastructure
Export & Assets
- Export Overview - Export workflow and best practices
- MaterialX Support - Complex material networks
Deployment
- Deployment Platforms - Netlify, Vercel, GitHub Pages, etc.
- Needle Cloud - Official Needle hosting
Optimization
- Optimization Overview - Best practices, toktx setup, troubleshooting
- Texture Compression - KTX2, ETC1S, UASTC, WebP, per-texture overrides
- Mesh Compression - Draco & Meshopt, mesh simplification
- Progressive Loading & LODs - Texture LODs, mesh LODs, per-texture LOD overrides
- Production Build Settings - Build types, Unity build window, preview compression
Web Integration
- Web Integration Overview - Frameworks and bundlers
- Progressive Web Apps (PWA) - Offline support, installability, auto-updates
- Responsive Design - Adaptive 3D layouts
- Embed in Websites - iframe, CDN, direct integration
Platform-Specific Integrations
Framer Plugin - Embed 3D content in Framer websites
WordPress Plugin - Embed 3D content in WordPress sites
Adobe Experience Manager - Integrate with AEM
8th Wall Migration - Transition from 8th Wall to Needle Engine
Debugging & Testing
- Needle Inspector - 5-star Chrome extension to inspect three.js scenes, with deep Needle Engine integration
- Needle MCP Server - AI assistant for Needle Engine (docs search, project analysis)
- Debugging & Profiling - URL parameters, VSCode debugging, performance profiling
- Local Development & Device Testing - Test on phones, VR headsets, local network setup
- Detect Mobile Devices - Platform detection
Looking for something else?
- Tutorials — Step-by-step lessons to learn Needle Engine by building projects
- Explanation — Architecture, glTF pipeline, and design decisions
- Reference — API docs, component catalog, configuration, changelogs