Skip to content

Commit bcc7562

Browse files
authored
Create horizon-worlds.md
1 parent a47fd3a commit bcc7562

File tree

1 file changed

+124
-0
lines changed

1 file changed

+124
-0
lines changed

content/en-us/horizon-worlds.md

Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,124 @@
1+
---
2+
title: Roblox for Meta Horizon Worlds developers
3+
description: If you're an experienced Meta Horizon Worlds developer, use this page to get oriented with Roblox.
4+
---
5+
6+
import ScriptTypes from './includes/engine-comparisons/script-types.md'
7+
import CodeSample from './includes/engine-comparisons/fishing-pole-code-sample.md'
8+
import ScriptLocations from './includes/engine-comparisons/script-locations.md'
9+
import Transforms from './includes/engine-comparisons/transforms.md'
10+
11+
## Meta Horizon Worlds vs. Roblox Studio: A Comparative Documentation
12+
13+
This document compares Meta Horizon Worlds and Roblox Studio, focusing on key features and differences relevant to content creators.
14+
15+
16+
# **1. Core Creation Environment:**
17+
18+
## **1.1. Hierarchical Organization:**
19+
20+
| Feature | Meta Horizon Worlds | Roblox Studio | Similarity |
21+
|------------------|--------------------------|--------------------------|--------------------------------------------------------------------------|
22+
| Organization Tool| Hierarchy window | Workspace (Explorer window)| Tree structure for parent-child object relationships. |
23+
| Purpose | Managing 3D entities | Managing 3D parts and objects | Facilitates scene management and object organization. |
24+
25+
**1.2. Asset Management:**
26+
27+
| Feature | Meta Horizon Worlds | Roblox Studio | Similarity |
28+
|------------------|--------------------------|--------------------------|-------------------------------------------------------------------------|
29+
| Asset Acquisition| Asset Store | Creator Store | Centralized library for acquiring reusable assets. |
30+
| Asset Management | Assets window | Inventory | Tools for managing and organizing imported and acquired assets. |
31+
32+
## **1.3. Terminology Differences:**
33+
34+
| Meta Horizon Worlds | Roblox Studio | Notes |
35+
|----------------------|---------------|-------------------------------------------------------------------------|
36+
| World | Place | Represents the primary environment or game level. |
37+
| Entity | Part | Basic building block or object within the 3D environment. |
38+
| Asset Template | Packages/Models | Container object grouping multiple gameplay elements. |
39+
| Transform | Transform/CFrame| Represents an object's position, rotation, and scale. |
40+
| Hierarchy window | Explorer window | Tool for managing the scene's object hierarchy. |
41+
| Properties window | Properties window| Tool for modifying object properties. |
42+
| Scene window | Viewport | 3D view of the world or place. |
43+
| Assets window | Toolbox | Tool for accessing and managing assets. |
44+
| SpawnPoint | SpawnLocation | Location where players appear in the world or place. |
45+
| Console | Output | Window for displaying debugging information and script output. |
46+
| Asset Library | Creator Store | Online asset library for importing assets into a project. |
47+
48+
# **2. Scripting and Logic:**
49+
50+
## **2.1. Scripting Languages:**
51+
52+
| Feature | Meta Horizon Worlds | Roblox Studio | Key Differences |
53+
|------------------|---------------------|---------------|------------------------------------------------------------------------------|
54+
| Language | TypeScript | Luau | TypeScript is statically typed, Luau is dynamically typed. |
55+
| Syntax | JavaScript-like | Lua-based | TypeScript has a more structured, object-oriented syntax. |
56+
| Typing | Statically Typed | Dynamically Typed| TypeScript provides compile-time type checking, Luau does not. |
57+
58+
**2.2. Script Execution Models:**
59+
60+
| Feature | Meta Horizon Worlds | Roblox Studio | Key Differences |
61+
|--------------------------|-----------------------------------|-----------------------------------|------------------------------------------------------------------------------|
62+
| Script Types | Default (Server), Local (Client) | Server, Client, Module | Meta Horizon Worlds simplifies to server/client, Roblox has explicit modules. |
63+
| Execution Context | Server or Client | Server, Client, Reusable Module | Roblox offers more granular control over script execution. |
64+
| Local Script Ownership | Manual assignment via code | Automatic | Roblox handles local script ownership automatically. |
65+
66+
67+
## **2.3. Language Comparison Example (Sum Function):**
68+
69+
**Luau (Roblox):**
70+
71+
```lua
72+
-- Sum numbers up to "n" and returns the sum
73+
function sumUpTo(n)
74+
local sum = 0
75+
for i = 1, n do
76+
sum = sum + i
77+
end
78+
return sum
79+
end
80+
81+
print(sumUpTo(5)) -- Output: 15 (1 + 2 + 3 + 4 + 5)
82+
```
83+
84+
**TypeScript (Meta Horizon Worlds):**
85+
```ts
86+
// Sum numbers up to "n" and returns the sum
87+
function sumUpTo(n: number): number {
88+
let sum = 0;
89+
for (let i = 1; i <= n; i++) {
90+
sum += i;
91+
}
92+
return sum;
93+
}
94+
95+
console.log(sumUpTo(5)); // Output: 15 (1 + 2 + 3 + 4 + 5)
96+
```
97+
98+
## **2.4. Script Type Comparison**
99+
100+
|Meta Horizon Worlds|Roblox|
101+
|---|---|
102+
|Script in Local Execution Mode|Client Script|
103+
|Script in default Server Execution Mode|Server Script|
104+
|Export functions/classes in any script|Module script|
105+
106+
# **3. Asset Pipeline and Interoperability:**
107+
108+
## **3.1. Asset Import:**
109+
110+
| Asset Type | Meta Horizon Worlds File Formats | Roblox Studio File Formats (Exported) |
111+
|------------|-----------------------------------|--------------------------------------|
112+
| 3D Model | .fbx, .png | .obj |
113+
| Audio | .opus, .wav | N/A |
114+
| Material | .png | .mtl |
115+
| Skydome | .png, .exr | N/A |
116+
| Texture | .png | .png |
117+
| Text | .json | N/A |
118+
119+
## **3.2. Roblox to Meta Horizon Worlds Conversion:**
120+
121+
* **Direct Conversion:** Limited. Only .fbx assets can be directly imported.
122+
* **Native Roblox Parts:** Require conversion to .fbx using tools like Blender.
123+
* **Scripts:** Luau scripts are incompatible; require complete rewrites in TypeScript.
124+
* **Exporting Roblox Assets:** Roblox exports models as .obj and materials as .mtl.

0 commit comments

Comments
 (0)