Skip to content

Commit da24b18

Browse files
authored
Merge pull request #1 from AMZN-Gene/AMZN-Gene-patch-1
Adding images
2 parents 3c87e36 + a085fe6 commit da24b18

File tree

1 file changed

+14
-50
lines changed

1 file changed

+14
-50
lines changed

rfcs/RFC Feature - USD in the Scene Pipeline.md

Lines changed: 14 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,7 @@ Scene files describe 3D content: Geometry, materials, animations. They also incl
6666
### What makes USD interesting, why use USD instead of another format like FBX, GLTF, STL, Collada, STEP, etc?
6767

6868
USD is built around a composition feature, the ability to easily reference other files. It's a lot like our prefab system.
69-
70-
![](@todo_image)
69+
![image](https://github.com/user-attachments/assets/397b92ed-f43c-433e-8cc5-81ada05d33c8)
7170

7271
Required O3DE Knowledge
7372
-----------------------
@@ -122,8 +121,7 @@ def Xform "hello"
122121
```
123122
124123
Visual representation of this file:
125-
126-
![](@todo_image)
124+
![image](https://github.com/user-attachments/assets/8a08df9e-213a-4545-a93d-43da8a49b16c)
127125
128126
### Basic USD file references
129127
@@ -205,12 +203,10 @@ Do this in three phases:
205203
* Workflow - additional procedural prefabs will be available for content creators to use in the Editor.
206204
207205
### Simple Example
208-
209-
![](@todo_image)
206+
![image](https://github.com/user-attachments/assets/2eaf9c33-0fb0-403a-a954-837695c91c6f)
210207
211208
### Example with References
212-
213-
![](@todo_image)
209+
![image](https://github.com/user-attachments/assets/ee794185-f07b-4c23-bbb1-99f5c2b94ea7)
214210
215211
Solution in Detail
216212
------------------
@@ -225,11 +221,13 @@ Solution in Detail
225221
3. Note: [AssImp latest has compiler error](https://github.com/assimp/assimp/pull/5693)
226222
2. Add USD File Types to Asset Importer Settings
227223
1. Edit _Registry/sceneassetimporter.setreg_ to process _usd, usda, usdz, usdc_ file types.
228-
2. _![](@todo_image)_
224+
2. ![image](https://github.com/user-attachments/assets/fb1a4fea-c13b-4e0d-9044-58374b2b6d4c)
225+
229226
3. Run Asset Processor
230227
1. Allow asset processor to digest USD files, such as the toy\_biplane.usd file here.
231228
2. [![](@todo_image)toy\_biplane\_idle.usdz](@todo_image)
232-
3. ![](@todo_image)
229+
3. ![image](https://github.com/user-attachments/assets/6eeacba2-afe2-4f22-95a2-0dc9b210a917)
230+
233231
234232
At this point, USDs containing just geometry will load, however AssetProcessor will fail to create a product for a simple USD which references that very same geom file.
235233
@@ -246,9 +244,7 @@ prepend references = @suzanne.usdc@</Suzanne/Suzanne>
246244
247245
248246
[![](@todo_image)suzanne.usdc](@todo_image) [![](@todo_image)usdObj-001.usda](@todo_image)
249-
250-
![](@todo_image)
251-
247+
![image](https://github.com/user-attachments/assets/08feb54f-61e1-4faf-ac98-864a0d3f85b0)
252248
253249
```
254250
Warning | The builder (Scene Builder) has not indicated it handled outputting product dependencies for file Assets/usdObj-001.usda.  This is a programmer error.
@@ -268,17 +264,9 @@ The Assimp scene builder returns the sub-meshes and O3D breaks them out into sep
268264
269265
Current: FBX Scene File to O3DE Entity
270266
271-
[
272-
273-
](@todo_image)[
274-
275-
](@todo_image)
276-
277-
[
267+
![image](https://github.com/user-attachments/assets/7ccf90e4-ec91-42fe-bbef-5f40b3c807c0)
278268
279269
280-
](#)
281-
282270
#### After Phase 2, USD files can reference other USD or OBJ meshes
283271
284272
While ultimately the same O3DE entity hierarchy is produced, notice how unlike before, the car asset references external files (_carbody.usd_ and _tire.obj_) allowing multiple content creators to work at the same time.
@@ -303,21 +291,8 @@ def Xform "Xform"
303291
...
304292
}
305293
```
306-
307-
308-
Phase 1 w/ References
309-
310-
[
311-
312-
](@todo_image)[
313-
314-
](@todo_image)
315-
316-
[
317-
318-
319-
](#)
320294
295+
![image](https://github.com/user-attachments/assets/9c5f4ddd-101b-4b2f-8da8-66daffbd2340)
321296
1. Update Assimp to support some passthroughs we would need for USD support, specifically a way to override asset resolving.
322297
1. See USD documentation on Asset Resolution:
323298
1. [https://graphics.pixar.com/usd/release/glossary.html#usdglossary-assetresolution](https://graphics.pixar.com/usd/release/glossary.html#usdglossary-assetresolution)
@@ -348,19 +323,8 @@ Phase 1 w/ References
348323
More Information: [Accessing Reference File Geom · Issue #186 · lighttransport/tinyusdz (github.com)](https://github.com/lighttransport/tinyusdz/issues/186)
349324
350325
3. From here, the current O3DE pipeline would take over, we would consume this flattened scene.
351-
1. Phase 2: USD w/ References Input/Output
352-
353-
[
354-
355-
](@todo_image)[
356-
357-
](@todo_image)
358-
359-
[
360-
361-
362-
](#)
363-
326+
1. ![image](https://github.com/user-attachments/assets/e4aac22e-0ec1-463a-96a6-a2b3fbfe7ec7)
327+
364328
365329
### Phase 3 - Prefab output mimicking USD relationship graph
366330
@@ -578,4 +542,4 @@ Right now we have some big challenges with importing very large scenes. We load
578542
579543
Our current pipeline for the most part works best when you give it large, composited scene files. We have no processing tools that can reconstruct a large complex scene from multiple different source scene files.
580544
581-
USD support would give us that. If a customer had a complex setup that would result in an extremely large single FBX file, they may be able to instead manage that content as multiple, smaller USD files that reference each other to create the same scene. This seems to be a big driving factor in Pixar creating this format to begin with, they were trying to solve these scale problems.
545+
USD support would give us that. If a customer had a complex setup that would result in an extremely large single FBX file, they may be able to instead manage that content as multiple, smaller USD files that reference each other to create the same scene. This seems to be a big driving factor in Pixar creating this format to begin with, they were trying to solve these scale problems.

0 commit comments

Comments
 (0)