Home Screen Demo¶
Sample scene that acts as the SDK test hub: a minimal world plus a runtime-built navigation overlay for jumping between IntelliVerseX validation scenes.
Scene overview¶
Primary location: Assets/Scenes/Tests/IVX_HomeScreen.unity
Package sample copy: Assets/Intelli-verse-X-SDK/Samples~/TestScenes/IVX_Homescreen.unity (same role when consumed via UPM samples)
This sample demonstrates:
- SDK “main menu” for QA — one place to open Auth, Ads, Leaderboard, Wallet, Quiz, Profile, Friends, Clan, More Of Us, Share/Rate, and other scenes under
Assets/Scenes/Tests/. - Quick-access buttons — each available scene becomes a labeled button; the current scene is skipped so you never navigate to yourself.
- Implicit module wiring hints — only scenes that exist in Build Settings (or, in the Editor, under
Assets/Scenes/Tests/) appear, which helps you see what is actually wired for a given project. - Return-to-home — from any feature test scene, a Home button jumps back to
IVX_HomeScreen(configurable).
Overlay toggle
Press F8 (default) to show or hide the navigation canvas while Play Mode is running.
Scene hierarchy (root objects)¶
The saved scene is intentionally small. At runtime, IVXTestSceneNavigator creates the menu UI under a new canvas.
On disk (YAML):
IVX_HomeScreen
├── IVX_TestSceneNavigator ← IntelliVerseX.Core.IVXTestSceneNavigator
└── Main Camera
After Awake() (runtime, conceptual):
IVX_TestSceneNavigator
└── IVX_TestSceneMenuCanvas (Screen Space Overlay, sorting order 500)
└── Panel
├── Labels ("IVX Test Scenes", "Current: …")
└── Buttons… (Home when not on home, then one per available scene link)
The navigator also ensures an EventSystem exists, preferring Input System’s UI module when the package is present, otherwise StandaloneInputModule.
Key script¶
IVXTestSceneNavigator.cs¶
Path: Assets/Intelli-verse-X-SDK/Core/IVXTestSceneNavigator.cs
Default quick links (Auth through Share/Rate) are serialized in _sceneLinks. Additional links are merged from Build Settings and from Assets/Scenes/Tests/*.unity in the Editor:
[SerializeField] private string _homeSceneName = "IVX_HomeScreen";
[SerializeField] private KeyCode _toggleOverlayKey = KeyCode.F8;
// Excerpt: default feature entries (see full list in source)
new SceneLink { Label = "Auth", SceneName = "IVX_AuthTest", ShowOnHome = true, ShowOnFeatureScenes = true },
new SceneLink { Label = "Profile", SceneName = "IVX_Profile", ShowOnHome = true, ShowOnFeatureScenes = true },
new SceneLink { Label = "More Of Us", SceneName = "IVX_MoreOfUs", ShowOnHome = true, ShowOnFeatureScenes = true },
Scene load behavior:
- Player / device builds:
SceneManager.LoadScene(name)whenApplication.CanStreamedLevelBeLoadedis true. - Editor: can load
Assets/Scenes/Tests/{name}.unityviaEditorSceneManager.LoadSceneInPlayModeeven if the scene is not in Build Settings (seeTryEditorLoadScene).
How to run¶
- Add
IVX_HomeScreenand the test scenes you need to File → Build Settings (recommended for standalone testing), or rely on Editor-only loading fromAssets/Scenes/Tests/. - Open
IVX_HomeScreen.unity. - Press Play.
- Use the overlay buttons to open a module sample; use Home or reload the home scene to return.
Customization¶
| Goal | What to change |
|---|---|
| Home scene name | _homeSceneName on IVXTestSceneNavigator |
| Toggle key | _toggleOverlayKey |
| Which links appear on home vs. feature scenes | Each SceneLink’s ShowOnHome / ShowOnFeatureScenes |
| Panel position / colors | Adjust BuildNavigationUI() (panel anchor, Image.color, button styling) |
| Extra scenes | Add SceneLink entries or place .unity files under Assets/Scenes/Tests/ |
Not a production main menu
This overlay is for SDK validation. Ship builds should replace or hide it and use your game’s own shell UI.
See also¶
- Core module
- Demos index
- Authentication sample — typical first stop from the hub