import { Badge } from "@/components/ui/badge";
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card";
import { Button } from "@/components/ui/button";
import { Headset, Code2, Rocket, ExternalLink, CheckCircle2, AlertTriangle, Package } from "lucide-react";
import { CodeBlock } from "@/components/dev-platform/ui/CodeBlock";
export default function VRChatIntegration() {
return (
VRChat Integration
Build VRChat Worlds with AeThex
Deploy interactive VR experiences to VRChat's 30K+ concurrent user platform using AeThex's unified API.
Leverage Udon scripting integration, cross-platform authentication, and real-time data sync.
{/* Quick Stats */}
30K+
Concurrent Users
250K+
Published Worlds
C#
Udon Programming
{/* Features */}
What You Can Build
Persistent World Data
Store player progress, leaderboards, and world state in AeThex backend with automatic sync across sessions
Cross-Platform Auth
Link VRChat users to AeThex Passport for unified identity across Roblox, Fortnite, and web platforms
Real-Time Events
Trigger world events based on API data - sync game state, achievements, or live leaderboards in real-time
Asset Pipeline
Upload and manage VRChat assets through AeThex API, with automatic versioning and CDN distribution
{/* Quick Start */}
Quick Start Guide
1. Install AeThex Unity SDK
Add the AeThex package to your VRChat Unity project
2. Configure API Credentials
Get your API key from the AeThex Developer Dashboard
3. Create Your First Udon Script
Build a persistent leaderboard that syncs across VRChat sessions
().GetClient();
}
public override void OnPlayerJoined(VRCPlayerApi player)
{
// Fetch player's AeThex profile
string playerId = player.displayName;
aethexClient.GetUserProfile(playerId).Then(profile =>
{
Debug.Log($"Player {profile.username} joined with score: {profile.score}");
UpdateLeaderboard(profile);
});
}
public void OnPlayerScored(VRCPlayerApi player, int points)
{
// Update score in AeThex backend
aethexClient.UpdateUserScore(player.displayName, points).Then(() =>
{
Debug.Log($"Score updated: +{points} points");
});
}
private void UpdateLeaderboard(UserProfile profile)
{
// Update VRChat UI with leaderboard data
// This syncs across all players in the world
}
}`}
language="csharp"
showLineNumbers={true}
/>
{/* Authentication Flow */}
Cross-Platform Authentication
Link VRChat players to their AeThex Passport for unified identity across all platforms.
Authentication Flow
-
1.
Player joins VRChat world and interacts with authentication panel
-
2.
World displays unique 6-digit code from AeThex API
-
3.
Player visits
aethex.dev/link and enters code
-
4.
VRChat world receives webhook with linked Passport data
-
5.
Player's VRChat profile now syncs with Roblox, Fortnite, web accounts
{
// Display 6-digit code to player in-world
authCodeText.text = $"Code: {response.code}";
Debug.Log($"Player should visit: aethex.dev/link?code={response.code}");
// Poll for authentication completion
StartCoroutine(PollAuthStatus(response.code));
});
}
private IEnumerator PollAuthStatus(string code)
{
while (true)
{
yield return new WaitForSeconds(2f);
var status = await aethexClient.CheckAuthStatus(code);
if (status.authenticated)
{
Debug.Log($"Player linked! Passport ID: {status.passportId}");
OnPlayerAuthenticated(status.passportId);
break;
}
}
}`}
language="csharp"
showLineNumbers={true}
/>
{/* Best Practices */}
Best Practices & Limitations
VRChat Limitations
• No direct HTTP requests: Use AeThex SDK which handles async via Unity coroutines
• Udon C# restrictions: No threading, limited async/await support
• Rate limits: Max 100 API calls per world per minute
• Data size: Keep API responses under 100KB for optimal performance
Performance Tips
• Cache data: Store frequently accessed data locally, refresh every 5 minutes
• Batch requests: Use bulk endpoints to fetch multiple players at once
• Lazy load: Only fetch data when players interact with features
• Fallback mode: Implement offline mode for when API is unavailable
{/* Resources */}
{/* Next Steps */}
Ready to Build?
Start building cross-platform VR experiences with AeThex. Deploy to VRChat, RecRoom,
and web simultaneously with one unified API.
);
}