Skip to content

Commit

Permalink
Merge branch 'main' into patch-6
Browse files Browse the repository at this point in the history
  • Loading branch information
sammygrey authored Jan 15, 2025
2 parents 00650e3 + c514fa1 commit 0d8797e
Show file tree
Hide file tree
Showing 79 changed files with 163 additions and 157 deletions.
6 changes: 3 additions & 3 deletions content/en-us/art/accessories/classic-clothing.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ description: Classic clothing are decals you can apply to a classic character mo
Current user-generated avatars on the Marketplace do not support 2D classic clothing. For information on creating modern 3D cosmetics, including rigid accessories and clothing items, see [Get started](../../avatar/index.md).
</Alert>

Classic clothing are a type of 2D cosmetic item that you can apply to the surface of a classic avatar character. You can [create](#creating) your own classic clothing items and sell them on the [Marketplace](https://www.roblox.com/catalog).
Classic clothing are a type of 2D cosmetic item that you can apply to the surface of a classic avatar character. You can [create](#create) your own classic clothing items and sell them on the [Marketplace](https://www.roblox.com/catalog).

This guide covers the process of creating a classic clothes asset using the following steps:

Expand Down Expand Up @@ -90,8 +90,8 @@ To begin creating classic shirts and pants:

1. [Download and unzip](../../assets/accessories/classic-clothing/Classic-Clothing-Templates.zip) the following clothing templates to use as a canvas for your art.
2. When complete, upload the image to Roblox using the [Asset Manager](../../projects/assets/manager.md) to test in your own experience.
3. Follow the [Testing](#testing) steps to ensure your 2D image looks as expected.
4. Follow the [Uploading](#uploading) steps to upload and sell your asset on the Marketplace.
3. Follow the [Testing](#test) steps to ensure your 2D image looks as expected.
4. Follow the [Uploading](#upload) steps to upload and sell your asset on the Marketplace.

When applying clothing to R15 avatars in Roblox, some limits exist with the templates and may require some testing to get right, as shown in the following examples:

Expand Down
2 changes: 1 addition & 1 deletion content/en-us/art/characters/creating/export-character.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Export character model
description: Export your character model from Blender using the correct settings and processes.
prev: /art/characters/creating/exporting-textures
prev: /art/characters/creating/export-textures
---

<Alert severity = 'warning'>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ Your character must have an internal bone structure to drive the vertices of the

### RootFaceJoint

The **RootFaceJoint** is a bone that is parented under the standard R15 head bone. This root bone does not control any vertices, but it must parent all other face bones. In Blender, you can quickly add a bone by **extruding** a child bone from the head bone and then map the bone name as a property in the Head_Geo mesh. The RootFaceJoint bone object is commonly named "DynamicHead" in the reference templates and examples, but you can use any name as long as you [map the root bone](#map) in custom properties.
The **RootFaceJoint** is a bone that is parented under the standard R15 head bone. This root bone must parent all other face bones. In Blender, you can quickly add a bone by **extruding** a child bone from the head bone and then map the bone name as a property in the Head_Geo mesh. The RootFaceJoint bone object is commonly named "DynamicHead" in the reference templates and examples, but you can use any name as long as you [map the root bone](#map) in custom properties.

To add a RootFaceJoint bone:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ description: Face accessories are 3D accessories that move and animate with a li
<b>This guide covers advanced topics.</b> Before you begin, you should have prior knowledge on modeling, UV mapping, rigging, animation, and how to set up a character in [Blender](https://www.blender.org) or [Maya](https://www.autodesk.com/products/maya/overview).
</Alert>

A face accessory is a cosmetic `Class.Accessory` that attaches to the head and can include items such as hair, eyebrows, glasses, and facial hair. To create a face accessory that is compatible with animatable heads, you use a similar design process as [layered clothing](../../../art/accessories#creation-process) to allow your accessory model to deform and stretch on a head when the head is posed or animated.
A face accessory is a cosmetic `Class.Accessory` that attaches to the head and can include items such as hair, eyebrows, glasses, and facial hair. To create a face accessory that is compatible with animatable heads, you use a similar design process as [layered clothing](../../../art/accessories/index.md#creation-process) to allow your accessory model to deform and stretch on a head when the head is posed or animated.

To create a face accessory, use a third-party modeling tool, such as [Blender](https://www.blender.org) or [Maya](https://www.autodesk.com/products/maya/overview), to create a 3D model with the following requirements:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: FACS poses reference
description: The Facial Action Coding System (FACS) ensures that all face animations have a common pose reference and can create similar face animations.
---

The [Facial Action Coding System](https://en.wikipedia.org/wiki/Facial_Action_Coding_System) (FACS) is a comprehensive, anatomically-based system for describing all visually discernible facial movement. This system breaks down all facial expressions into individual types of muscle movement, such as `LeftEyeClosed` or `MouthLeft`. You can [configure](../../../art/characters/facial-animation/creating-basic-heads.md#posing) and store these muscle movements, or **poses**, within the head model through a third-party modeling software, such as [Blender](https://www.blender.org) or [Maya](https://www.autodesk.com/products/maya/overview). When you import the head model into Studio, you can then access and [animate](../../../art/characters/facial-animation/animate-heads.md) these poses to create lively facial expressions.
The [Facial Action Coding System](https://en.wikipedia.org/wiki/Facial_Action_Coding_System) (FACS) is a comprehensive, anatomically-based system for describing all visually discernible facial movement. This system breaks down all facial expressions into individual types of muscle movement, such as `LeftEyeClosed` or `MouthLeft`. You can [configure](../../../art/characters/facial-animation/create-basic-heads.md#pose) and store these muscle movements, or **poses**, within the head model through a third-party modeling software, such as [Blender](https://www.blender.org) or [Maya](https://www.autodesk.com/products/maya/overview). When you import the head model into Studio, you can then access and [animate](../../../art/characters/facial-animation/animate-heads.md) these poses to create lively facial expressions.

The following is a list of 50 base poses that you can use in Roblox to portray a wide range of face emotions. Except for the first neutral pose, the order of poses you save to your character model doesn't matter since this information is set during the [mapping](../../../art/characters/facial-animation/create-basic-heads.md#map) process as a custom property.

Expand Down
2 changes: 1 addition & 1 deletion content/en-us/art/characters/facial-animation/moods.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: Moods
description: Moods are a type of facial animation that loop indefinitely, allowing users to express persistent facial emotion.
---

A **mood** is a type of [facial animation](../../../art/characters/facial-animation/index.md) for animatable heads that loops indefinitely, allowing users to express themselves and react to others with a persistent facial emotion. Moods play simultaneously with other character [default animations](../../../animation/use.md#replace-default-animations), such as walking, climbing, and swimming, and if the default animation has a facial animation, the default animation blends with the character's mood.
A **mood** is a type of [facial animation](../../../art/characters/facial-animation/index.md) for animatable heads that loops indefinitely, allowing users to express themselves and react to others with a persistent facial emotion. Moods play simultaneously with other character [default animations](../../../animation/using.md#default-character-animations), such as walking, climbing, and swimming, and if the default animation has a facial animation, the default animation blends with the character's mood.

<GridContainer numColumns="2">
<figure>
Expand Down
4 changes: 1 addition & 3 deletions content/en-us/art/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -360,11 +360,9 @@ The following is a list of common 3D art resources ordered by subject, as well a

<a href="../tutorials/curriculums/environmental-art/index.md"><Typography variant='body1' style={{marginBottom: 12}}>Environmental art curriculum</Typography></a>
<a href="../tutorials/use-case-tutorials/modeling/assemble-modular-environments.md"><Typography variant='body1' style={{marginBottom: 12}}>Assemble modular environments</Typography></a>
<a href="../tutorials/use-case-tutorials/lighting/light-with-props.md"><Typography variant='body1' style={{marginBottom: 12}}>Light with props</Typography></a>
<a href="../effects/light-sources.md"><Typography variant='body1' style={{marginBottom: 12}}>Light with props</Typography></a>
<a href="../tutorials/use-case-tutorials/audio/in-game-sounds.md"><Typography variant='body1' style={{marginBottom: 12}}>In-game sounds</Typography></a>
<a href="../tutorials/use-case-tutorials/lighting/enhance-outdoor-environments-with-future-lighting.md"><Typography variant='body1' style={{marginBottom: 12}}>Enhance outdoor environments with future lighting</Typography></a>
<a href="../tutorials/use-case-tutorials/vfx/basic-particle-effects.md"><Typography variant='body1' style={{marginBottom: 12}}>Basic particle effects</Typography></a>
<a href="../tutorials/use-case-tutorials/vfx/custom-particle-effects.md"><Typography variant='body1' style={{marginBottom: 12}}>Custom particle effects</Typography></a>
<a href="https://devforum.roblox.com/t/custom-skyboxes-101/2849003"><Typography variant='body1' style={{marginBottom: 12}}>Custom skyboxes 101 (Staff)</Typography></a>

<br />
Expand Down
8 changes: 4 additions & 4 deletions content/en-us/art/overview-studio.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Roblox Studio includes free powerful 3D creation tools that enable you to effect
Each of the following sections include a brief description as well as additional links for further learning:

- [Basic layout of Roblox Studio's interface](#basic-layout) - Familiarize yourself with the various panels and tools available in Roblox Studio to navigate effectively.
- [Common Shortcuts](#common-shortcuts) - Increase efficiency by mastering essential keyboard shortcuts for faster workflows in Roblox Studio.
- [Common shortcuts](#common-shortcuts) - Increase efficiency by mastering essential keyboard shortcuts for faster workflows in Roblox Studio.
- [How to use assets and packages](#assets-and-packages) - Learn to import, edit, and share assets and packages to enhance your workflow and collaboration.
- [3D modeling within Studio](#3d-modeling) - Explore the fundamentals of creating and importing 3D models within Roblox Studio.
- [Materials and Textures](#materials-and-textures) - Discover how Roblox uses materials and textures with your models to enhance the surface appearance of your objects.
Expand Down Expand Up @@ -82,12 +82,12 @@ Like all creation tools, keyboard shortcuts allow you to work efficiently and qu
<td>Anchoring a part locks it in place, even when other objects collide with it. </td>
</tr>
<tr>
<td>In [Studio Settings](../studio/setup.md#customization)</td>
<td>In [Studio settings](../studio/setup.md#customization)</td>
<td>Change highlight and selection colors</td>
<td>Changing highlight and selection colors can help with accessibility.</td>
</tr>
<tr>
<td>In [Studio Settings](../studio/setup.md#customization)</td>
<td>In [Studio settings](../studio/setup.md#customization)</td>
<td>Change camera speed</td>
<td>Modify how fast the camera moves by default. </td>
</tr>
Expand Down Expand Up @@ -128,7 +128,7 @@ The **Creator Store** is where you can find many assets created and shared by Ro

Access the Creator Store through Studio's Toolbox or the [Creator Hub](https://create.roblox.com/store/models). For more information, see [Creator Store](../production/creator-store.md).

#### Roblox created models
#### Roblox-created models

Roblox also provides free model packs that you can use within your experiences. These are high quality assets used in many of Roblox's showcase experiences. You can add these to your toolbox in various ways by directly adding them from the Creator Dashboard, or searching for them in the Toolbox.

Expand Down
4 changes: 2 additions & 2 deletions content/en-us/assistant/guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ description: How to use Assistant to help build, grow, and monetize your creatio

## Studio features

You can access Assistant from [Studio](../studio/index.md) and the [documentation](/assistant), but Studio has the larger set of features. In Studio, Assistant consists of a large language model (LLM) that generates code and a run-command module (similar to the existing [command bar](../studio/ui-overview.md#command-bar)) that runs code.
You can access Assistant from [Studio](../studio/index.md) and the documentation, but Studio has the larger set of features. In Studio, Assistant consists of a large language model (LLM) that generates code and a run-command module (similar to the existing [command bar](../studio/ui-overview.md#command-bar)) that runs code.

As a result, Assistant can act directly on your data model, such as inserting and modifying objects, writing and inserting scripts, and automating repetitive tasks like modifying properties in bulk.

Expand Down Expand Up @@ -76,7 +76,7 @@ To access Assistant from Studio:

### From the documentation

To access Assistant from the [documentation](/assistant):
To access Assistant from the documentation:

1. In the upper navigation bar, click the **Assistant** button.

Expand Down
2 changes: 1 addition & 1 deletion content/en-us/chat/chat-window.md
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ Appearance of the chat input bar is customizable through `Class.ChatInputBarConf
</tr>
<tr>
<td>`Class.ChatInputBarConfiguration.AutocompleteEnabled|AutocompleteEnabled`</td>
<td>Whether the text chat system shows autocomplete options for emojis and [commands](../chat/in-experience-text-chat.md#creating-custom-commands). Emojis are autocompleted by typing `:` followed by non-whitespace characters, while commands are autocompleted by typing `/`.</td>
<td>Whether the text chat system shows autocomplete options for emojis and [commands](../chat/in-experience-text-chat.md). Emojis are autocompleted by typing `:` followed by non-whitespace characters, while commands are autocompleted by typing `/`.</td>
<td>`true`</td>
</tr>
<tr>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -248,7 +248,7 @@ Serialization and deserialization support the following Lua data types:
- [Tables](../../luau/tables.md)
- Tables must only contain other supported data types
- Numeric keys are translated into strings if the length of the table is 0
- [Buffers](../../reference/engine/libraries/buffer.yaml)
- [Buffers](/reference/engine/libraries/buffer)

If you try to store a data type that serialization doesn't support, you either:

Expand Down
2 changes: 1 addition & 1 deletion content/en-us/cloud-services/memory-stores/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: Memory stores
description: Explains how to implement memory store data structures to store frequent in-memory data.
---

`Class.MemoryStoreService` is a high throughput and low latency data service that provides fast in-memory data storage accessible from all servers in a live session. **Memory Stores** are suitable for frequent and ephemeral data that change rapidly and don't need to be durable, because they are faster to access and vanish when reaching the maximum lifetime. For data that needs to persist across sessions, use [data stores](../../cloud-services/data-stores).
`Class.MemoryStoreService` is a high throughput and low latency data service that provides fast in-memory data storage accessible from all servers in a live session. **Memory Stores** are suitable for frequent and ephemeral data that change rapidly and don't need to be durable, because they are faster to access and vanish when reaching the maximum lifetime. For data that needs to persist across sessions, use [data stores](../../cloud-services/data-stores/index.md).

## Data structures

Expand Down
4 changes: 2 additions & 2 deletions content/en-us/cloud/open-cloud/experience-notifications.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,8 +68,8 @@ Example response which returns the notification ID in the `id` field:

```json
{
"path": "users/505306092/notifications/6ca4d981-36fa-4255-82a1-14d95c116889",
"id": "6ca4d981-36fa-4255-82a1-14d95c116889"
"path": "users/505306092/notifications/6ca4d981-36fa-4255-82a1-14d95c116889",
"id": "6ca4d981-36fa-4255-82a1-14d95c116889"
}
```

Expand Down
21 changes: 11 additions & 10 deletions content/en-us/cloud/open-cloud/instance.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ curl --include --location --request GET "https://apis.roblox.com/cloud/v2/univer
</Tabs>

Rather than just listing the children, the response includes an `Operation`
object with a different endpoint. [Poll this endpoint](#polling-for-results) to
object with a different endpoint. [Poll this endpoint](#poll-for-results) to
asynchronously retrieve the actual list of children. A more complete code sample
looks like this:

Expand Down Expand Up @@ -410,16 +410,17 @@ from the web. The demo consists of the following:

### Create an API key

1. Go to the [Creator Hub Open Cloud API Keys](https://create.roblox.com/dashboard/credentials?activeTab=ApiKeysTab) page and click **Create API Key**.
1. Fill out the form with the following information.
- **Name**: PotionShop
- **API System**: Add the **universe-place-instances** API system. Add your Potion Shop experience to the system. For **Experience Operations**, add read and write access.
- **Accepted IP Addresses**: Add 0.0.0.0/0 as an IP Address
- **Expiration**: No Expiration
- Click **Save & Generate Key** and then **Copy Key to Clipboard**.
1. Go to the [Creator Hub Open Cloud API Keys](https://create.roblox.com/dashboard/credentials?activeTab=ApiKeysTab) page and click **Create API Key**.
1. Fill out the form with the following information.

1. Paste the API key to the API Key cell (D2) on the Intro tab of your Google
Sheet.
- **Name**: PotionShop
- **API System**: Add the **universe-place-instances** API system. Add your Potion Shop experience to the system. For **Experience Operations**, add read and write access.
- **Accepted IP Addresses**: Add 0.0.0.0/0 as an IP Address
- **Expiration**: No Expiration
- Click **Save & Generate Key** and then **Copy Key to Clipboard**.

1. Paste the API key to the API Key cell (D2) on the Intro tab of your Google
Sheet.

### Obtain the universe and place ID

Expand Down
2 changes: 1 addition & 1 deletion content/en-us/cloud/open-cloud/usage-data-stores.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: Usage guide for data stores
description: Explains how to use Open Cloud Web APIs to access and modify data stores by HTTP calls.
---

In addition to accessing [data stores](../../cloud-services/data-stores) using Lua `Class.DataStoreService` in Studio or live servers, you can use Open Cloud APIs to access and utilize [standard](../../reference/cloud/datastores-api/v1.json) and [ordered data stores](../../reference/cloud/datastores-api/ordered-v1.json) from external scripts and tools with granular access and security control.
In addition to accessing [data stores](../../cloud-services/data-stores/index.md) using Lua `Class.DataStoreService` in Studio or live servers, you can use Open Cloud APIs to access and utilize [standard](../../reference/cloud/datastores-api/v1.json) and [ordered data stores](../../reference/cloud/datastores-api/ordered-v1.json) from external scripts and tools with granular access and security control.

<Alert severity="warning">
Open Cloud APIs for ordered data stores are beta APIs that might be subject to changes for future releases.
Expand Down
2 changes: 1 addition & 1 deletion content/en-us/cloud/open-cloud/usage-messaging.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ Players.PlayerAdded:Connect(onPlayerAdded)

After [setting up](#set-up-a-topic-for-messaging) a topic, publish a message to your experience's live servers:

1. [Create an API key](./api-keys.md#creating-an-API-key) on [Creator Dashboard](https://create.roblox.com/credentials) and copy it somewhere safe. Make sure you perform the following settings:
1. [Create an API key](./api-keys.md#creating-an-API-key) on [Creator Dashboard](https://create.roblox.com/dashboard/credentials) and copy it somewhere safe. Make sure you perform the following settings:

1. Add **messaging-service** to **Access Permissions**.
2. Select an experience, and add the **universe-messaging-service:publish** operation.
Expand Down
Loading

0 comments on commit 0d8797e

Please sign in to comment.