You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/en-us/characters/pathfinding.md
+16Lines changed: 16 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,6 +21,22 @@ With **Pathfinding modifiers** enabled, text labels indicate specific materials
21
21
22
22
<imgsrc="../assets/avatar/pathfinding/Navigation-Labels.jpg"width="800"alt="Navigation labels showing on navigation mesh" />
23
23
24
+
## Known Limitations
25
+
26
+
Pathfinding features specific limitations to ensure efficient processing and optimal performance.
27
+
28
+
### Vertical Placement Limit
29
+
30
+
Pathfinding calculations consider only parts within certain vertical boundaries:
31
+
32
+
- Lower Boundary — Parts with a bottom **Y** coordinate less than -65,536 studs are ignored.
33
+
- Upper Boundary — Parts with a top **Y** coordinate exceeding 65,536 studs are ignored.
34
+
- Vertical Span — The vertical distance from the lowest part's bottom **Y** coordinate to the highest part's top **Y** coordinate must not exceed 65,536 studs; otherwise, the pathfinding system will ignore those parts during the pathfinding computation.
35
+
36
+
### Search Distance Limitation
37
+
38
+
The direct line-of-sight distance for pathfinding from the start to the finish point must not exceed 3,000 studs. Exceeding this distance will result in a `Enum.PathStatus|NoPath` status.
39
+
24
40
## Creating Paths
25
41
26
42
Pathfinding is initiated through `Class.PathfindingService` and its `Class.PathfindingService:CreatePath()|CreatePath()` function.
Copy file name to clipboardExpand all lines: content/en-us/production/analytics/custom-events.md
+8Lines changed: 8 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,6 +15,10 @@ Once your experience begins tracking custom events, you'll unlock the Custom pag
15
15
16
16
To unlock the Custom Events dashboard, you must first track custom events in your experience. Start by identifying which metrics are the most important for monitoring and improving your experience. Events are aggregated daily so it may take up to 24 hours for charts to populate on the page.
17
17
18
+
<Alertseverity ='warning'>
19
+
Events can only be sent from the server and in published experiences. Events can't be sent from the client or Studio.
20
+
</Alert>
21
+
18
22
### Counters
19
23
20
24
Counters are one-time events captured without a value. You can use counters for tracking the number of times a specific event has occurred. Use counters for single actions such as clicking a button, starting a quest, or using a tool.
@@ -71,6 +75,10 @@ You can breakdown by custom fields by using the breakdown selector.
71
75
72
76
<imgsrc="../../assets/analytics/event-types/Custom-Event-Breakdown.png"width = "40%"alt="A dropdown indicating the three custom fields you can compare across, along with standard breakdowns like age, gender, operating system and more."/>
73
77
78
+
You should use custom fields whenever possible instead of event names, since there is a much tighter cardinality limit on event names than custom fields. Using custom fields also allows you to see visualizations of events across field values.
79
+
80
+
For example, instead of `PlantCabbage`, `PlantTurnip`, `PlantPepper` as three separate events, you could have a single event with the name `PlantSeed` and custom field values `Plant - Cabbage`, `Plant - Turnip`, and `Plant - Pepper`. This way you can visualize both the total number of seeds planted as well as compare each plant in the same visualization. This also reduces your event name cardinality.
81
+
74
82
For more information, see [custom fields](./custom-fields.md).
Copy file name to clipboardExpand all lines: content/en-us/production/analytics/custom-fields.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,7 +9,7 @@ You can use up to 3 **custom fields** to filter your [Economy](./economy-events.
9
9
- Player class — Warrior, Mage, Archer
10
10
- Weapon type — SMG, Pistol, Rocket Launcher
11
11
12
-
The `customFields` parameter is a dictionary argument that allows sending up to three custom values using the provided `Enum.AnalyticsCustomFieldKeys` as keys. You can have up to 8,000 unique combinations of values across the three custom fields.
12
+
The customFields parameter is a dictionary argument that allows sending up to three custom values using the provided `Enum.AnalyticsCustomFieldKeys` as keys by accessing them as `Enum.AnalyticsCustomFieldKeys.CustomField{01, 02, 03}.Name`. Anything other than `CustomField01.Name`, `CustomField02.Name`, and `CustomField03.Name` is ignored. You can have up to 8,000 unique combinations of values across the three custom fields.
13
13
14
14
Using a fantasy-related experience as an example, you can track an economy event regarding equipment type, player class, and level with the following:
Copy file name to clipboardExpand all lines: content/en-us/production/analytics/economy-events.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,6 +15,10 @@ Once your experience begins tracking Economy events, you'll unlock the Economy p
15
15
16
16
To unlock the Economy dashboard, you need to track some economy events in your experience. Start by identifying where users **source** (i.e. gain) and **sink** (i.e. spend) resources in your experience. These are represented in code by `Enum.AnalyticsEconomyFlowType`, which can be either `Source` or `Sink`.
17
17
18
+
<Alertseverity ='warning'>
19
+
Events can only be sent from the server and in published experiences. Events can't be sent from the client or Studio.
20
+
</Alert>
21
+
18
22
### Transaction Types
19
23
20
24
Each source and sink event requires a transaction type, encoded with `Enum.AnalyticsEconomyTransactionType`. By default, the options are:
Copy file name to clipboardExpand all lines: content/en-us/production/analytics/funnel-events.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,6 +15,10 @@ Once your experience begins tracking Funnel events, you'll unlock the Funnel pag
15
15
16
16
To track funnel events, first identify the most important funnels in your experience and segment them into steps. Your onboarding flow is a great place to start, as this is where you may be losing most of your users.
17
17
18
+
<Alertseverity ='warning'>
19
+
Events can only be sent from the server and in published experiences. Events can't be sent from the client or Studio.
20
+
</Alert>
21
+
18
22
### Tracking One-Time Funnels
19
23
20
24
A one-time funnel monitors conversion events that only occur once per user.
<td>Updates the voxel lighting. Lights are only rendered in Voxel Lighting mode, but occupancy and sky light are computed in all lighting modes.</td>
225
-
<td>If updating chunk occupancy takes too long, consider using lower resolution geometry, or reducing the number of parts. If the other sub-markers take too long, consider reducing the number of lights. Consider using non-shadow casting geometry for objects that move and invalidate the occupancy.</td>
224
+
<td>Updates the voxel lighting, which is used in `Enum.Technology|Voxel` and `Enum.Technology|ShadowMap` modes and at quality levels below 4 in `Enum.Technology|Future` mode.</td>
225
+
<td>If updating chunk occupancy takes too long, consider using lower resolution geometry, reducing the number of parts, or anchoring parts. If the other sub-markers take too long, consider reducing the number of lights and using non-shadow casting geometry for objects that move and invalidate the occupancy.</td>
<td>Updates shadow maps. Not performed at quality levels below 4 or when `Class.Lighting.Technology` is set to `Enum.Technology|Voxel`.</td>
230
+
<td>If lighting is set to `Enum.Technology|Future`, lower it to `Enum.Technology|ShadowMap` or reduce the number of lights. You can also use `Class.Light.Shadows` and `Class.BasePart.CastShadows` to disable shadow casting on less important instances. See [Improving Performance](../../performance-optimization/improving.md#mitigation-4).</td>
232
231
</tr>
233
-
*/}
234
232
<tr>
235
233
</tr>
236
234
<tr>
237
235
<td>Perform/Scene/Glow, ColorCorrection, MSAA, SSAO, and SSAOApply</td>
238
236
<td>Post-processing rendering.</td>
239
-
<td>Reduce the number of post-processing effects, usually this is not significant.</td>
237
+
<td>Reduce the number of post-processing effects. Usually this is not significant.</td>
240
238
</tr>
241
239
<tr>
242
240
<td>Perform/Scene/UI</td>
243
241
<td>UI rendering. In Id_Screen, there is a label with the number of batches, materials and triangles used.</td>
244
242
<td>Reduce the number of visible UI elements. Using `CanvasGroups` may help at the expense of increased memory use.</td>
0 commit comments