在對(duì)程序化建模工具進(jìn)行編程的同時(shí),了解通用場景描述(USD)。

從開發(fā)電影視覺特效到構(gòu)建大型的 3D 世界,通用場景描述(USD)正在迅速成為虛擬世界的標(biāo)準(zhǔn)。USD 不僅是一種文件格式,還是一個(gè)開放、可擴(kuò)展的框架和生態(tài)系統(tǒng),具有可用于在 3D 虛擬世界中合成、編輯、查詢、渲染、協(xié)作和仿真的 API。NVIDIA 與其合作伙伴生態(tài)系統(tǒng),正繼續(xù)投資 USD,致力于將其發(fā)展成為 3D 互聯(lián)網(wǎng)的通用語言和“元宇宙的 HTML”。
Omniverse 使用 USD 作為其原生場景描述。新加入 NVIDIA Omniverse 社區(qū)的開發(fā)者想要了解 USD 以及其作為虛擬世界語言的作用。
為了向開發(fā)者展示如何有效使用 USD API,Matias Codesal 開設(shè)了一個(gè)編程系列教程,以展示 USD 的實(shí)際應(yīng)用。Matias Codesal 記錄了自己開發(fā)程序化建模工具的過程,他將該工具稱為 Bookshelf Generator(書架生成器)。這個(gè)系列展示了如何在 Omniverse 中創(chuàng)建這個(gè)作為擴(kuò)展程序的工具并且使用 USD 進(jìn)行建模和場景布局操作的全過程。

該編程系列教程由七個(gè)部分組成,將從頭到尾告訴開發(fā)者如何使用 NVIDIA Omniverse 構(gòu)建基于 USD 的程序化建模工具。
開發(fā)者將學(xué)到的內(nèi)容
在該系列教程中,開發(fā)者將了解如何有效地利用集成開發(fā)環(huán)境(IDE)—Omniverse Code 開發(fā) Omniverse 擴(kuò)展程序。而后將探討如何使用 Visual Studio Code 開發(fā)這個(gè) Bookshelf Generator 擴(kuò)展程序。
Matias Codesal 從事開發(fā) Omniverse 擴(kuò)展程序已有好幾年了,其最初開發(fā)的兩個(gè)擴(kuò)展程序是 CityEngine PyPRT 和 Camera Reticle 擴(kuò)展程序,從那時(shí)起,Matias Codesal 學(xué)到了很多關(guān)于 Omniverse 開發(fā)的知識(shí)。當(dāng)開發(fā)者看到 Matias Codesal 在該系列中快速創(chuàng)建和迭代其想法時(shí),就能發(fā)現(xiàn)他最喜歡 Omniverse Code 的一點(diǎn)在于,Omniverse Code 能夠熱重載其源代碼并提供強(qiáng)大的 Python 支持。
該系列最適合具有 Python 背景的中高級(jí)開發(fā)者觀看。但由于 Matias Codesal 在該系列中主要展示了其思考過程,因此初級(jí)開發(fā)者也可以從其展示的如何尋找答案和推理問題中進(jìn)行學(xué)習(xí)。該系列主要不是用于詳細(xì)介紹 USD 的所有功能。事實(shí)上,合成是 USD 的一個(gè)關(guān)鍵功能,但 Matias Codesal 在該項(xiàng)目中只使用了合成操作符中的引用符。
該項(xiàng)目涵蓋了許多建模和場景創(chuàng)作概念。雖然其重點(diǎn)是使用 UsdGeomPointInstancer 實(shí)例化和排列書架上的書本,但開發(fā)者也能學(xué)到諸如 prim 算法、自定義屬性、關(guān)系、邊界框計(jì)算等概念。該項(xiàng)目完全利用 Python 編寫,但對(duì) USD 感興趣的 C++ 開發(fā)者也可以通過該項(xiàng)目有所收獲。
這部完整的教程分為七個(gè)部分:
-
使用 Kit Commands 來創(chuàng)建書柜的原始形狀和材質(zhì)。
-
縮放和轉(zhuǎn)換構(gòu)建書柜的書柜板。
-
引用書本資產(chǎn)并將其實(shí)例化,而后將其排列在書架上。
-
為書本添加隨機(jī)比例并改進(jìn)書柜資產(chǎn)結(jié)構(gòu)。
-
改進(jìn) UV 縮放,并增加對(duì)于在一個(gè)階段內(nèi)制作多個(gè)書柜的支持。
-
更新多書柜制作的用戶界面并支持自定義書本資產(chǎn)。
-
最終確定用戶體驗(yàn)并修復(fù)剩余的 bug。

學(xué)習(xí)如何構(gòu)建自定義 UI 工具和創(chuàng)建自定義物體。
開始學(xué)習(xí)
-
試用書架生成器
當(dāng)前是開始學(xué)習(xí)通用場景描述的最佳時(shí)機(jī)。您可以下載 NVIDIA Omniverse Launcher 和 Omniverse Code,試用書架生成器。
詳情請(qǐng)見:
https://www.nvidia.cn/omniverse/download/
https://developer.nvidia.cn/zh-cn/nvidia-omniverse-platform/code-app
-
閱讀原文章
如果您想要按步驟學(xué)習(xí),可閱讀原文章,觀看書架生成器播放列表,點(diǎn)播該系列的全部七個(gè)部分。
詳情請(qǐng)見:
https://medium.com/@nvidiaomniverse/hit-the-usd-books-in-this-metaverse-coding-series-c1d7fb35194e
-
該項(xiàng)目的完整代碼
該項(xiàng)目的完整代碼位于此存儲(chǔ)庫。此存儲(chǔ)庫還包含在該系列每一部分結(jié)尾處標(biāo)記代碼狀態(tài)的 Git 標(biāo)簽。
詳情請(qǐng)見:
https://github.com/mati-nvidia/omni-bookshelf-generator
-
Omniverse 開發(fā)者資源中心
如需了解更多關(guān)于通用場景描述的信息,以及進(jìn)一步了解 NVIDIA Omniverse 開發(fā)領(lǐng)域的信息,敬請(qǐng)?jiān)L問 Omniverse 開發(fā)者資源中心。
詳情請(qǐng)見:
https://developer.nvidia.cn/nvidia-omniverse-developer-resource-center
原文標(biāo)題:在元宇宙編程系列教程中學(xué)習(xí) USD 知識(shí)
文章出處:【微信公眾號(hào):NVIDIA英偉達(dá)企業(yè)解決方案】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
-
英偉達(dá)
+關(guān)注
關(guān)注
22文章
3922瀏覽量
93136
原文標(biāo)題:在元宇宙編程系列教程中學(xué)習(xí) USD 知識(shí)
文章出處:【微信號(hào):NVIDIA-Enterprise,微信公眾號(hào):NVIDIA英偉達(dá)企業(yè)解決方案】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
從安防到元宇宙:RK3588如何重塑視覺感知邊界?
工業(yè)元宇宙落地!數(shù)字孿生如何預(yù)測設(shè)備壽命誤差<3%?

Meta發(fā)布新AI模型Meta Motivo,旨在提升元宇宙體驗(yàn)
突圍立項(xiàng)!亮風(fēng)臺(tái)獲批上海市“科技創(chuàng)新行動(dòng)計(jì)劃”元宇宙專項(xiàng)

維享時(shí)空榮獲2024中國元宇宙星級(jí)供應(yīng)商
鼓浪嶼元宇宙社區(qū)平臺(tái)正式上線
Meta削減元宇宙投入,應(yīng)對(duì)經(jīng)濟(jì)壓力
摩爾線程亮相2024中國元宇宙大會(huì)
聯(lián)想發(fā)布國內(nèi)首個(gè)軟硬一體元宇宙平臺(tái):聯(lián)想晨星元宇宙平臺(tái)
工業(yè)元宇宙AI超級(jí)終端“派中心一體機(jī)”問世
數(shù)字孿生驅(qū)動(dòng)工業(yè)元宇宙的深度變革

評(píng)論