viverse-threejs-vanilla-foundation

Initialize a vanilla Three.js game loop with VIVERSE authentication and canvas focus handling.

2|1|Updated Mar 28, 2026
One-click install
npx skills add https://github.com/viverseofficial/viverse-sdk-skills --skill viverse-threejs-vanilla-foundation
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: viverse-threejs-vanilla-foundation
Source: https://github.com/viverseofficial/viverse-sdk-skills/tree/main/skills/viverse-threejs-vanilla-foundation
Command: npx skills add https://github.com/viverseofficial/viverse-sdk-skills --skill viverse-threejs-vanilla-foundation

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill solves the complexity of integrating custom Three.js browser games into the VIVERSE platform by providing a standardized, non-React architecture that ensures proper lifecycle management and platform compatibility.

Core Features & Use Cases

  • VIVERSE Integration: Provides patterns for auth-decoupled game launching, profile chip integration, and proper canvas focus handling for iframe environments.
  • Performance Optimization: Includes battle-tested patterns for VFX object pooling, collision performance, and efficient material flash timers to maintain high frame rates.
  • Use Case: Use this when developing a lightweight, high-performance 3D mini-game that needs to run inside a VIVERSE World without the overhead of a React-based framework.

Quick Start

Use the viverse-threejs-vanilla-foundation skill to initialize a new Three.js game loop with VIVERSE auth and canvas focus handling.

Frequently Asked Questions about viverse-threejs-vanilla-foundation

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I integrate a vanilla Three.js game into the VIVERSE platform?

To integrate a vanilla Three.js game into VIVERSE, use a standardized non-React architecture that handles asynchronous authentication, custom render loops, and iframe canvas focus management.

Why does my Three.js browser game lose focus inside a VIVERSE iframe?

Three.js browser games lose focus inside VIVERSE iframes without mandatory canvas focus handling, which requires implementing specific lifecycle management patterns to capture input correctly.

What's the best way to maintain high frame rates in a Three.js VIVERSE game?

Maintain high frame rates in a Three.js VIVERSE game by implementing performance-critical mechanics like VFX object pooling, collision performance optimizations, and efficient material flash timers.

Do I need React to build a VIVERSE browser game with Three.js?

You do not need React to build a VIVERSE browser game with Three.js; a lightweight, high-performance vanilla architecture is supported to avoid React framework overhead.

Can I use object pooling for VFX in Three.js VIVERSE mini-games?

You can use object pooling for VFX in Three.js VIVERSE mini-games, utilizing battle-tested patterns to optimize collision performance and maintain high frame rates.

What limitations exist when running Three.js games in VIVERSE Worlds?

Limitations when running Three.js games in VIVERSE Worlds include iframe canvas focus challenges and the need for auth-decoupled game launching to ensure proper platform compatibility.