# USD Survival Guide - A Practical Onboarding Guide for Pipeline TDs & Software Developers

**URL:** <https://forum.aousd.org/t/usd-survival-guide-a-practical-onboarding-guide-for-pipeline-tds-software-developers/237>\
**Category:** USD\
**Created:** [August 3, 2023, 7:43pm UTC](https://forum.aousd.org/t/usd-survival-guide-a-practical-onboarding-guide-for-pipeline-tds-software-developers/237 "2023-08-03T19:43:36Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![LucaScheller](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.aousd.org/lucascheller/32/83_2.png) [@LucaScheller](https://forum.aousd.org/u/LucaScheller)\
**Post date:** [August 3, 2023, 7:43pm UTC](https://forum.aousd.org/t/usd-survival-guide-a-practical-onboarding-guide-for-pipeline-tds-software-developers/237/1 "2023-08-03T19:43:36Z")

</div>

![UsdSurvivalGuide](https://us1.discourse-cdn.com/flex016/uploads/aousd/original/1X/0aa914b24cfe7cb7cc6d7495978ad1d84ab12735.png)

Hi everyone,

Over the past few months, I’ve written an onboarding guide to OpenUSD for pipeline TDs and software developers under the name “USD Survival Guide”. I wanted to create something that softens the often steep learning curve that some aspects of USD have.

It aims to be practical as opposed to offering a high-level overview. This means, you’ll find a lot of code examples from actual production scenarios as well as a more hands on approach instead of overviews/terminology explanations.

It is also intended to be used by small to mid-size (25-150 people) studios, which often don’t have the development resources to figure everything out themselves, to transition to USD more easily. Therefore, it ships with asset resolver example implementations, general best practice tips & tricks and a pre-flight checklist to see if you are ready to make the switch to USD. We also primarily stick to the Python side of things (at least for now, I’m hoping to expand this to C++ in the future).

It uses Houdini to explain all the basic concepts of USD as well as features a deep dive best practice section for Houdini Solaris, which I’ll be presenting as part of Houdini’s Siggraph 2023 Hive on Wednesday, 9.8.23. If you’re in town, I’d love to see you there, hear your feedback and have a chat!

Keep in mind that this is the first draft, so there might be some mistakes here and there. I feel like it is already in a good enough shape though to be released. It is open-source, so please feel free to contribute 🙂

Here are some resource links:  
Website: [USD Survival Guide - GitHub Pages](https://lucascheller.github.io/VFX-UsdSurvivalGuide/introduction/overview.html)  
Siggraph Event: [https://s2023.siggraph.org/presentation/?id=exs167&sess=sess515](https://s2023.siggraph.org/presentation/?id=exs167&sess=sess515)

Looking forward to hearing, what you guys think! Let me know what topics we should expand on in the future!

Have a great day!

- Luca

---

<div class="post-metadata">

**Author:** ![dhruvgovil](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.aousd.org/dhruvgovil/32/3_2.png) [@dhruvgovil](https://forum.aousd.org/u/dhruvgovil)\
**Post date:** [August 3, 2023, 10:01pm UTC](https://forum.aousd.org/t/usd-survival-guide-a-practical-onboarding-guide-for-pipeline-tds-software-developers/237/2 "2023-08-03T22:01:41Z")

</div>

Thanks for putting this together, Luca! This looks like it’ll help a ton to demystify USD workflows.

Hopefully I can check out your Hive session in person. I assume it’ll be recorded and put on YouTube later as well?

---

<div class="post-metadata">

**Author:** ![LucaScheller](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.aousd.org/lucascheller/32/83_2.png) [@LucaScheller](https://forum.aousd.org/u/LucaScheller)\
**Post date:** [August 3, 2023, 10:21pm UTC](https://forum.aousd.org/t/usd-survival-guide-a-practical-onboarding-guide-for-pipeline-tds-software-developers/237/3 "2023-08-03T22:21:24Z")

</div>

Hey,

Yes, SideFX will put it on the usual social media channels afterwards 🙂

The presentation will be a summarized version of the most import stuff (and more Houdini focused, as it is part of the Houdini Hive presentations). Would be very cool to see you there, but if you can’t make it, don’t worry! The guide itself goes into a lot more detail, so you won’t be missing out that much, content wise.

---

<div class="post-metadata">

**Author:** ![golubevcg](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.aousd.org/golubevcg/32/88_2.png) [@golubevcg](https://forum.aousd.org/u/golubevcg)\
**Post date:** [August 4, 2023, 2:42pm UTC](https://forum.aousd.org/t/usd-survival-guide-a-practical-onboarding-guide-for-pipeline-tds-software-developers/237/4 "2023-08-04T14:42:53Z")

</div>

Looks amazing; well done! And thank you for sharing!

---

<div class="post-metadata">

**Author:** ![mati-nvidia](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.aousd.org/mati-nvidia/32/18_2.png) [@mati-nvidia](https://forum.aousd.org/u/mati-nvidia)\
**Post date:** [August 4, 2023, 5:09pm UTC](https://forum.aousd.org/t/usd-survival-guide-a-practical-onboarding-guide-for-pipeline-tds-software-developers/237/5 "2023-08-04T17:09:25Z")

</div>

Nice work! Love the practical examples. I’ve added it to [Awesome OpenUSD](https://github.com/matiascodesal/awesome-openusd).

---

<div class="post-metadata">

**Author:** ![jcoelho](https://avatars.discourse-cdn.com/v4/letter/j/71e660/32.png) [@jcoelho](https://forum.aousd.org/u/jcoelho)\
**Post date:** [August 4, 2023, 5:38pm UTC](https://forum.aousd.org/t/usd-survival-guide-a-practical-onboarding-guide-for-pipeline-tds-software-developers/237/6 "2023-08-04T17:38:52Z")

</div>

Bookmarked!

Thanks for making this. Its contents is very easy to digest and the practical examples are very appreciated, I’ve shared it in our studio.

---

<div class="post-metadata">

**Author:** ![LucaScheller](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.aousd.org/lucascheller/32/83_2.png) [@LucaScheller](https://forum.aousd.org/u/LucaScheller)\
**Post date:** [August 6, 2023, 4:35am UTC](https://forum.aousd.org/t/usd-survival-guide-a-practical-onboarding-guide-for-pipeline-tds-software-developers/237/7 "2023-08-06T04:35:16Z")

</div>

Thank you very much for the positive feedback, means a lot!  
Thanks @mati-nvidia for adding it to Awesome OpenUSD 🙂

---

<div class="post-metadata">

**Author:** ![simplychenable](https://avatars.discourse-cdn.com/v4/letter/s/2acd7d/32.png) [@simplychenable](https://forum.aousd.org/u/simplychenable)\
**Post date:** [August 6, 2023, 4:20pm UTC](https://forum.aousd.org/t/usd-survival-guide-a-practical-onboarding-guide-for-pipeline-tds-software-developers/237/8 "2023-08-06T16:20:04Z")

</div>

@LucaScheller this is fantastic. thanks for taking the time and energy putting this together! 🍻

---

<div class="post-metadata">

**Author:** ![JathavanSriram](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.aousd.org/jathavansriram/32/117_2.png) [@JathavanSriram](https://forum.aousd.org/u/JathavanSriram)\
**Post date:** [August 19, 2023, 12:23am UTC](https://forum.aousd.org/t/usd-survival-guide-a-practical-onboarding-guide-for-pipeline-tds-software-developers/237/9 "2023-08-19T00:23:32Z")

</div>

> [@mati-nvidia](#):
>
> Awesome OpenUSD

This is great! I am just getting started in USD. Many Thanks from Hamburg!

---

<div class="post-metadata">

**Author:** ![leekerley](https://avatars.discourse-cdn.com/v4/letter/l/bc79bd/32.png) [@leekerley](https://forum.aousd.org/u/leekerley)\
**Post date:** [August 21, 2023, 11:30pm UTC](https://forum.aousd.org/t/usd-survival-guide-a-practical-onboarding-guide-for-pipeline-tds-software-developers/237/10 "2023-08-21T23:30:20Z")

</div>

Thanks @LucaScheller for such a great resource for the community, and for any of you who didn’t manage to make it to see his presentation at siggraph, the video link to the SideFX Hive session is here. [https://www.youtube.com/watch?v=VSE7ayrRStg](https://www.youtube.com/watch?v=VSE7ayrRStg)

---

<div class="post-metadata">

**Author:** ![DaveBorck](https://avatars.discourse-cdn.com/v4/letter/d/e9a140/32.png) [@DaveBorck](https://forum.aousd.org/u/DaveBorck)\
**Post date:** [September 18, 2023, 6:50pm UTC](https://forum.aousd.org/t/usd-survival-guide-a-practical-onboarding-guide-for-pipeline-tds-software-developers/237/11 "2023-09-18T18:50:26Z")

</div>

That’s a lot of knowledge, thank you for that contribution!

---

<div class="post-metadata">

**Author:** ![LucaScheller](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.aousd.org/lucascheller/32/83_2.png) [@LucaScheller](https://forum.aousd.org/u/LucaScheller)\
**Post date:** [October 26, 2023, 9:52pm UTC](https://forum.aousd.org/t/usd-survival-guide-a-practical-onboarding-guide-for-pipeline-tds-software-developers/237/12 "2023-10-26T21:52:04Z")

</div>

Hey everyone, thanks for all the positive feedback so far 🙂

The Usd Asset Resolver subsection ([GitHub - LucaScheller/VFX-UsdAssetResolver: Usd Asset Resolver Reference Implementations](https://github.com/LucaScheller/VFX-UsdAssetResolver)) has received some updates:

- We now automatically compile our asset resolver examples against the latest Houdini build for Linux and Windows 🥳 This means you can now just download the binaries here on our release page: [Releases · LucaScheller/VFX-UsdAssetResolver · GitHub](https://github.com/LucaScheller/VFX-UsdAssetResolver/releases) and run them in Houdini. You’ll need to configure a few environment variables as described here to make it work: [Resolvers - Usd Asset Resolver](https://lucascheller.github.io/VFX-UsdAssetResolver/resolvers/overview.html#usd-plugin-configuration)  
(Let me know if this is still too much work, I can also add a 1-click installer that does this for you (similar how my LYNX tools installer works [GitHub - LucaScheller/VFX-LYNX: LYNX | Free & OpenSource VFX Pipeline Tools](https://github.com/LucaScheller/VFX-LYNX)))
- We added unit tests for all resolvers

Let me know if you have any questions or suggestions 🙂

I’ll try to add the following soon-ish:

- A short tutorial video on how to use the release binaries
- A third “Cached Resolver” implementation as described here: [Batching Ar2 queries](https://forum.aousd.org/t/batching-ar2-queries/818)
