Skip to content

Commit 0a6abd2

Browse files
author
Michael Zappe
committed
Reset numbering
1 parent ff1b2e7 commit 0a6abd2

File tree

2 files changed

+29
-29
lines changed

2 files changed

+29
-29
lines changed

articles/remote-rendering/tutorials/unity/custom-models/custom-models.md

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,10 @@ Starting in this chapter, we'll implement a basic [model-view-controller pattern
3939
With the introduction of MRTK, there are multiple scripts, prefabs, and assets that can now be added to the project to support interactions and visual feedback. These assets referred to as the **Tutorial Assets**, are bundled into a [Unity Asset Package](https://docs.unity3d.com/Manual/AssetPackages.html), which is included in the [Azure Remote Rendering GitHub](https://github.com/Azure/azure-remote-rendering) in '\Unity\TutorialAssets\TutorialAssets.unitypackage'.
4040

4141
1. Clone or download the git repository [Azure Remote Rendering](https://github.com/Azure/azure-remote-rendering), if downloading extract the zip to a known location.
42-
2. In your Unity project, choose *Assets -> Import Package -> Custom Package*.
43-
3. In the file explorer, navigate to the directory where you cloned or unzipped the Azure Remote Rendering repository, then select the `.unitypackage` found in **Unity -> TutorialAssets -> TutorialAssets.unitypackage**
44-
4. Select the **Import** button to import the contents of the package into your project.
45-
5. In the Unity Editor, select *Mixed Reality Toolkit -> Utilities -> Upgrade MRTK Standard Shader for Lightweight Render Pipeline* from the top menu bar and follow the prompts to upgrade the shader.
42+
1. In your Unity project, choose *Assets -> Import Package -> Custom Package*.
43+
1. In the file explorer, navigate to the directory where you cloned or unzipped the Azure Remote Rendering repository, then select the `.unitypackage` found in **Unity -> TutorialAssets -> TutorialAssets.unitypackage**
44+
1. Select the **Import** button to import the contents of the package into your project.
45+
1. In the Unity Editor, select *Mixed Reality Toolkit -> Utilities -> Upgrade MRTK Standard Shader for Lightweight Render Pipeline* from the top menu bar and follow the prompts to upgrade the shader.
4646

4747
Once MRTK and the Tutorial Assets double check, that the correct profile is selected.
4848

@@ -62,21 +62,21 @@ Most of the view controllers in this tutorial operate against abstract base clas
6262
You can now add the prefab **AppMenu** to the scene, for visual feedback of the current session state. The **AppMenu** also present the modal panel that the user uses to authorize the application to connect to ARR.
6363

6464
1. Locate the **AppMenu** prefab in *Assets/RemoteRenderingTutorial/Prefabs/AppMenu*
65-
2. Drag the **AppMenu** prefab into the scene.
66-
3. If you see a dialog for **TMP Importer**, follow the prompts to **Import TMP Essentials**. Then close the importer dialog, as the examples and extras aren't needed.
67-
4. The **AppMenu** is configured to automatically hook up and provide the modal for consenting to connecting to a Session, so we can remove the bypass placed earlier. On the **RemoteRenderingCoordinator** GameObject, remove the bypass for authorization we implemented previously, by pressing the '-' button on the **On Requesting Authorization** event.
65+
1. Drag the **AppMenu** prefab into the scene.
66+
1. If you see a dialog for **TMP Importer**, follow the prompts to **Import TMP Essentials**. Then close the importer dialog, as the examples and extras aren't needed.
67+
1. The **AppMenu** is configured to automatically hook up and provide the modal for consenting to connecting to a Session, so we can remove the bypass placed earlier. On the **RemoteRenderingCoordinator** GameObject, remove the bypass for authorization we implemented previously, by pressing the '-' button on the **On Requesting Authorization** event.
6868

6969
![Remove bypass](./media/remove-bypass-event.png).
7070

71-
5. Test the view controller by pressing **Play** in the Unity Editor.
72-
6. In the Editor, now that MRTK is configured, you can use the WASD keys to change the position your view and holding the right mouse button + moving the mouse to change your view direction. Try "driving" around the scene a bit to get a feel for the controls.
73-
7. On device, you can raise your palm up to summon the **AppMenu**, in the Unity Editor, use the hotkey 'M'.
74-
8. If you've lost sight of the menu, press the 'M' key to summon the menu. The menu is placed near the camera for easy interaction.
75-
9. The **AppMenu** presents a UI element for authorization to the right of the **AppMenu**. From now on, you should use this UI element to authorize the app to manage remote rendering sessions.
71+
1. Test the view controller by pressing **Play** in the Unity Editor.
72+
1. In the Editor, now that MRTK is configured, you can use the WASD keys to change the position your view and holding the right mouse button + moving the mouse to change your view direction. Try "driving" around the scene a bit to get a feel for the controls.
73+
1. On device, you can raise your palm up to summon the **AppMenu**, in the Unity Editor, use the hotkey 'M'.
74+
1. If you've lost sight of the menu, press the 'M' key to summon the menu. The menu is placed near the camera for easy interaction.
75+
1. The **AppMenu** presents a UI element for authorization to the right of the **AppMenu**. From now on, you should use this UI element to authorize the app to manage remote rendering sessions.
7676

7777
![UI authorize](./media/authorize-request-ui.png)
7878

79-
10. Stop Unity from playing to continue with the tutorial.
79+
1. Stop Unity from playing to continue with the tutorial.
8080

8181
## Manage model state
8282

@@ -252,26 +252,26 @@ In the most basic terms, **RemoteRenderedModel** holds the data needed to load a
252252
Let's test the new script by loading the test model again. For this test, we need a Game Object to contain the script and be a parent to the test model, and we also need a virtual stage that contains the model. The stage stays fixed relative to the real world using a [WorldAnchor](/windows/mixed-reality/develop/unity/spatial-anchors-in-unity?tabs=worldanchor). We use a fixed stage so that the model itself can still be moved around later on.
253253

254254
1. Create a new empty Game Object in the scene and name it **ModelStage**.
255-
2. Add a World Anchor component to **ModelStage**
255+
1. Add a World Anchor component to **ModelStage**
256256

257257
![Add WorldAnchor component](./media/add-world-anchor-component.png)
258258

259-
3. Create a new empty Game Object as a child of **ModelStage** and name it **TestModel**.
260-
4. Add the *RemoteRenderedModel* script to **TestModel**.
259+
1. Create a new empty Game Object as a child of **ModelStage** and name it **TestModel**.
260+
1. Add the *RemoteRenderedModel* script to **TestModel**.
261261

262262
![Add RemoteRenderedModel component](./media/add-remote-rendered-model-script.png)
263263

264-
5. Fill in the `Model Display Name` and the `Model Path` with "*TestModel*" and "*builtin://Engine*" respectively.
264+
1. Fill in the `Model Display Name` and the `Model Path` with "*TestModel*" and "*builtin://Engine*" respectively.
265265

266266
![Specify model details](./media/add-model-script.png)
267267

268-
6. Position the **TestModel** object in front of the camera, at position **x = 0, y = 0, z = 3**.
268+
1. Position the **TestModel** object in front of the camera, at position **x = 0, y = 0, z = 3**.
269269

270270
![Position object](./media/test-model-position.png)
271271

272-
7. Ensure **AutomaticallyLoad** is turned on.
273-
8. Press **Play** in the Unity Editor to test the application.
274-
9. Grant authorization by clicking the *Connect* button to allow the app to create a session, connect to it, and automatically load the model.
272+
1. Ensure **AutomaticallyLoad** is turned on.
273+
1. Press **Play** in the Unity Editor to test the application.
274+
1. Grant authorization by clicking the *Connect* button to allow the app to create a session, connect to it, and automatically load the model.
275275

276276
Watch the Console as the application progresses through its states. Keep in mind, some states may take some time to complete, and there might be no progress updates for a while. Eventually, you see logs from the model loading and then shortly after the rendered test model in the scene.
277277

@@ -293,14 +293,14 @@ Follow the steps specified in the [Quickstart: Convert a model for rendering](..
293293
![Add RemoteRenderedModel component](./media/add-remote-rendered-model-script.png)
294294

295295
1. Fill in the `Model Display Name` with an appropriate name for your model.
296-
2. Fill in the `Model Path` with the model's *Shared Access Signature (SAS)* URI you created in the [Provision Blob Storage in Azure and custom model ingestion](#provision-blob-storage-in-azure-and-custom-model-ingestion) step.
297-
3. Position the GameObject in front of the camera, at position **x = 0, y = 0, z = 3.**
298-
4. Ensure **AutomaticallyLoad** is turned on.
299-
5. Press **Play** in the Unity Editor to test the application.
296+
1. Fill in the `Model Path` with the model's *Shared Access Signature (SAS)* URI you created in the [Provision Blob Storage in Azure and custom model ingestion](#provision-blob-storage-in-azure-and-custom-model-ingestion) step.
297+
1. Position the GameObject in front of the camera, at position **x = 0, y = 0, z = 3.**
298+
1. Ensure **AutomaticallyLoad** is turned on.
299+
1. Press **Play** in the Unity Editor to test the application.
300300

301301
The console shows the current session state and also the model loading progress messages, once the session is connected.
302302

303-
6. Remove your custom model object from the scene. The best experience for this tutorial is with the test model. While multiple models are supported in ARR, this tutorial was written to best support a single remote model at a time.
303+
1. Remove your custom model object from the scene. The best experience for this tutorial is with the test model. While multiple models are supported in ARR, this tutorial was written to best support a single remote model at a time.
304304

305305
## Next steps
306306

articles/remote-rendering/tutorials/unity/manipulate-models/manipulate-models.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -158,12 +158,12 @@ This tutorial is using MRTK for object interaction. Most of the MRTK specific im
158158
The **AppMenu** has a sub menu **Model Tools** that implements a view controller for binding with the model. When the GameObject contains a **RemoteBounds** component, the view controller will add a [**BoundingBox**](https://microsoft.github.io/MixedRealityToolkit-Unity/Documentation/README_BoundingBox.html) component, which is an MRTK component that renders a bounding box around an object with a **BoxCollider**. A [**ObjectManipulator**](/windows/mixed-reality/mrtk-unity/mrtk2/features/ux-building-blocks/object-manipulator), which is responsible for hand interactions. These scripts combined will allow us to move, rotate, and scale the remotely rendered model.
159159
160160
1. Move your mouse to the Game panel and click inside it to give it focus.
161-
2. Using [MRTK's hand simulation](https://microsoft.github.io/MixedRealityToolkit-Unity/Documentation/InputSimulation/InputSimulationService.html#hand-simulation), press and hold the left Shift key.
162-
3. Steer the simulated hand so the hand ray is pointing to the test model.
161+
1. Using [MRTK's hand simulation](https://microsoft.github.io/MixedRealityToolkit-Unity/Documentation/InputSimulation/InputSimulationService.html#hand-simulation), press and hold the left Shift key.
162+
1. Steer the simulated hand so the hand ray is pointing to the test model.
163163

164164
![Pointed hand ray](./media/handray-engine.png)
165165

166-
4. Hold left click and drag the model to move it.
166+
1. Hold left click and drag the model to move it.
167167

168168
You should see the remotely rendered content move along with the bounding box. You might notice some delay or lag between the bounding box and the remote content. This delay will depend on your internet latency and bandwidth.
169169

0 commit comments

Comments
 (0)