Getting Started: Desktop Editor
Just downloaded the Horizon Worlds Desktop Editor? Feeling a little lost? Don't worry! This post covers the essential first steps for brand-new creators and those transitioning from the VR Editor. Let's get you comfortable and ready to build!
This post is related to Office Hours - Best Practices: Getting Started on Thursday, 3/13, at 5:00 PM PT. Register here and join me for a more in-depth discussion!
1. Setting Up Your Development Environment
Before diving into world creation, setting up your development environment correctly is crucial for a smooth workflow.
- Desktop Editor Setup: If you have not installed the Desktop Editor, start by following this article.
- NOTE: If you have not installed VSCode, follow the next step before opening the editor.
- VSCode Integration: For writing scripts that add interactivity to your worlds, integrating with Visual Studio Code (VSCode) is highly recommended. VSCode is a powerful code editor that provides features like code completion (autocomplete) and syntax highlighting, making coding much easier.
- How to Integrate: Follow this detailed guide in the Learn section of the Meta Horizon page.
- NOTE: If the desktop editor is not running when you install VSCode, it may automatically detect VSCode the next time you run it. If not, then follow the linked guide above.
- World and Player Settings: Take some time to explore the World and Player Settings. This area is accessible through the main menu via Publish World and Player Settings. You should start by changing your world name.
- NOTE: When changing the world name, you’re also changing the working directory for your scripts. You may need to leave the world and return before you can create or edit your scripts.
2. Navigating the Viewport
The Viewport is your main window into the 3D world you're creating. Mastering navigation is fundamental to working effectively in the editor. For a visual introduction to navigating this space, check out Andy Sargeant’s article. Here's a breakdown of the key controls:
- Basic Movement (Build Mode):
- Move Forward: Arrow Up, or Right Click + W
- Move Backward: Arrow Down, or Right Click + S
- Move Left: Arrow Left, or Right Click + A
- Move Right: Arrow Right, or Right Click + D
- Move Up: Right Click + E
- Move Down: Right Click + Q
- Speed Control:
- Set Speed: Right Click + Mouse Wheel (scroll to adjust)
- Increase Speed (Temporary): Hold Left Shift while moving.
- Camera Control (Build Mode):
- Orbit (Rotate Around a Point): Left Mouse Click & Drag + Alt
- Pan (Move Sideways): Middle Mouse Click & Drag
- Rotate Camera (Look Around): Right Click & Drag
- Zoom: Mouse Wheel Scroll
- Focus: Select an object and press 'F' (this centers the view on the selected object – incredibly useful!).
- Practice is Key! Spend time simply moving around the viewport using these controls until it becomes second nature. This will dramatically speed up your workflow.
3. Understanding Gizmos
Gizmos are pre-built, interactive objects that add functionality to your world without coding required (though you can extend their behavior with scripts). They are essential building blocks for creating engaging experiences. Let's focus on some key Gizmos:
- Environment Gizmo: This controls the overall look and feel of your world's environment.
- Purpose: Sets the skybox, fog, and other visual settings.
- Use Case: Create a sunny day, a spooky night, or a futuristic cityscape by adjusting its properties.
- ParticleFx Gizmo: Adds visual effects like sparks, smoke, fire, or magical auras.
- Purpose: Creates dynamic visual effects.
- Use Case: Add smoke to a chimney, sparkles to a magic wand, or fire to a campfire. Particle effects can greatly enhance the atmosphere.
- Sound Gizmo: Plays audio within your world.
- Purpose: Adds sound effects and background music.
- Use Case: Play a "whoosh" sound when a door opens, ambient forest sounds in an outdoor scene, or background music in a social space.
- Static Light Gizmo: Adds a fixed light source to your scene.
- Purpose: Illuminates objects and creates shadows.
- Use Case: Create realistic lighting for a room, highlight a specific object, or simulate the glow of a lamp. Different types of static lights (point, spot, directional) offer different lighting effects.
- Spawn Point Gizmo: Determines where players enter your world.
- Purpose: Sets the player's starting or respawn location.
- Use Case: You must have at least one Spawn Point in your world. You can have multiple Spawn Points.
- Empty Object Gizmo: A versatile, invisible object used for organization and scripting.
- Purpose: Acts as a container or parent for other objects, or as a target for scripts.
- Use Case: Group objects together logically, create a pivot point for rotation, or serve as a reference point for scripting (e.g., "move this object to the location of the Empty Object").
- Trigger Zone Gizmo: Detects when a player (or other object) enters or exits a defined area.
- Purpose: Triggers events based on object presence within a specific volume.
- Use Case: Open a door when a player approaches, play a sound when someone enters a room, or activate a trap when triggered.
Finding Gizmos: You'll find Gizmos in the Build Menu under the Gizmos category. Drag and drop them into your scene. Each Gizmo has customizable properties in the Properties panel on the right side of the editor when the Gizmo is selected.
Continued below in the next post...