توضح هذه العينات بعض المفاهيم الأساسية لكتابة محولات OpenUSD. تستخدم العينات OpenUSD وOpenUSD Exchange SDK (docs, github) لتوضيح كيفية تأليف USD المتسق والصحيح:
Asset Validator
createStage
createCameras
createLights
createMaterials
createMesh
createReferences
createSkeleton
createTransforms
setDisplayNames
يتطلب هذا المشروع "make" و"g++".
افتح المحطة.
للحصول على "make"، اكتب sudo apt install make
(Ubuntu/Debian)، أو yum install make
(CentOS/RHEL).
بالنسبة إلى "g++"، اكتب sudo apt install g++
(Ubuntu/Debian)، أو yum install gcc-c++
(CentOS/RHEL).
استخدم البرنامج النصي للإنشاء المقدم لتنزيل كافة التبعيات الأخرى (مثل USD)، وإنشاء ملفات Makefiles، وتجميع التعليمات البرمجية.
./repo.sh بناء
استخدم البرنامج النصي run.sh
(على سبيل المثال ./run.sh createStage
) لتنفيذ كل برنامج في بيئة تم تكوينها مسبقًا.
نصيحة: إذا كنت تفضل إدارة البيئة بنفسك، أضف
<samplesRoot>/_build/linux64-x86_64/release
إلىLD_LIBRARY_PATH
الخاص بك.
للحصول على تعليمات وسيطة سطر الأوامر، استخدم --help
./run.sh createStage --help
استخدم البرنامج النصي python.sh
(على سبيل المثال ./python.sh source/createStage/createStage.py
) لتنفيذ كل برنامج في بيئة تم تكوينها مسبقًا.
للحصول على تعليمات وسيطة سطر الأوامر، استخدم --help
./python.sh source/createStage/createStage.py --help
يتطلب هذا المشروع Microsoft Visual Studio 2019 أو أحدث. قم بتنزيل وتثبيت Visual Studio باستخدام C++.
استخدم البرنامج النصي للإنشاء المقدم لتنزيل كافة التبعيات (مثل USD)، وإنشاء المشاريع، وتجميع التعليمات البرمجية.
بناء .repo.bat
استخدم البرنامج النصي run.bat
(على سبيل المثال .run.bat createStage
) لتنفيذ كل برنامج في بيئة تم تكوينها مسبقًا.
للحصول على تعليمات وسيطة سطر الأوامر، استخدم --help
.run.bat createStage --help
استخدم البرنامج النصي python.bat
(على سبيل المثال .python.bat sourcecreateStagecreateStage.py
) لتنفيذ كل برنامج في بيئة تم تكوينها مسبقًا.
للحصول على تعليمات وسيطة سطر الأوامر، استخدم --help
.python.bat sourcecreateStagecreateStage.py --help
للإنشاء داخل VS IDE، افتح الحل الموجود في مجلد _compiler
في Visual Studio. يمكن بعد ذلك تعديل نموذج كود C++ وتصحيح أخطائه وإعادة بنائه وما إلى ذلك من هناك.
ملاحظة: إذا قام المستخدم بتثبيت نماذج تبادل OpenUSD في المجلد
%LOCALAPPDATA%
، فلن يقوم Visual Studio "بالإنشاء" بشكل صحيح عند إجراء التغييرات نظرًا لوجود خطأ ما في التقاط تغييرات المصدر. قم بأحد هذه الأشياء لمعالجة المشكلة:
Rebuild
المشروع مع كل تغيير في المصدر بدلاً منBuild
انسخ مجلد OpenUSD Exchange Samples إلى مجلد آخر خارج
%LOCALAPPDATA%
قم بإجراء اتصال بمجلد خارج %LOCALAPPDATA% وافتح الحل من هناك:
mklink /JC:usd-exchange-samples %LOCALAPPDATA%cloned-reposusd-exchange-samples
يستخدم مستودع العينات إطار عمل أدوات Repo ( repo_man
) لتكوين تبعيات الإنشاء المسبق والحزم والبناء ووقت التشغيل والاختبار والتنسيق وأدوات أخرى. يتم استخدام Packman كمدير تبعية لحزم مثل OpenUSD، وOmniverse Asset Validator، وOpenUSD Exchange SDK، وعناصر أخرى. تستخدم العينات أدوات repo_man وpremake وpackman الخاصة بـ OpenUSD Exchange SDK كقوالب للتضمين والربط مقابل OpenUSD وOpenUSD Exchange SDK والتبعيات الأخرى. يمكن أن تكون هذه بمثابة مثال لتكوين البناء ووقت التشغيل الذي قد يتطلبه تطبيق العميل. فيما يلي قائمة بالملفات المثيرة للاهتمام:
premake5.lua - ملف تكوين البناء للعينات
prebuild.toml - تستهلكه أدوات إنشاء الريبو لتحديد المكان الذي يجب نسخ تبعيات وقت التشغيل فيه (بخلاف ما تم تثبيته بالفعل repo install_usdex
)
_build/target-deps/usd-exchange/release/dev/tools/premake/usdex_build.lua
- ملف قالب التكوين المسبق لـ OpenUSD Exchange SDK لتضمين USD وOpenUSD Exchange SDK نفسها ومكتبات أخرى.
هذا الملف غير متاح حتى يتم جلب التبعيات
للحصول على تفاصيل حول اختيار وتثبيت النكهات أو الميزات أو الإصدارات الخاصة بـ OpenUSD Exchange SDK، راجع وثائق أداة install_usdex.
راجع مستندات البدء باستخدام OpenUSD Exchange SDK للتعرف على كيفية استخدام OpenUSD Exchange SDK وOpenUSD في تطبيقك.
تركز العينات المدرجة على هذه المفاهيم الأساسية:
أوبنUSD
كاميرات الدولار
أسماء العرض بالدولار الأمريكي
أضواء الدولار الأمريكي
مواد الدولار الأمريكي
شبكات الدولار الأمريكي
أسماء الدولار الأولية
الدولار الأمريكي بريفارس
مراحل الدولار
نماذج X بالدولار الأمريكي
تم تصميم العينات ليتم تشغيلها بشكل تسلسلي وستقوم بإنشاء مرحلة USD التي تم إنشاؤها في الأصل في نموذج createStage
. يمكن أيضًا تشغيلها بشكل مستقل وسيتم فتحها أو إنشاء مرحلة اعتمادًا على ما إذا كانت موجودة أم لا. لتشغيل جميع العينات بشكل تسلسلي باستخدام أمر واحد، اكتب هذا في سطر الأوامر بعد الإنشاء:
Linux: ./repo.sh test -f testRunAll -e keep Windows: .repo.bat test -f testRunAll -e keep
سيؤدي هذا إلى إخراج موقع المراحل التي تم إنشاؤها في C++ وPython بعد تشغيل كافة العينات بشكل تسلسلي.
إذا فشلت البرامج النصية من العينات بسبب مشكلات في الشهادة الموقعة ذاتيًا، فسيكون الحل البديل هو القيام بذلك:
قم بتثبيت python-certifi-win32 الذي يسمح باستخدام مخزن شهادات Windows لطلبات TLS/SSL:
Toolspackmanpython.bat -m pip install python-certifi-win32 --مضيف موثوق به pypi.org --ملفات مضيف موثوق به.pythonhosted.org
ابحث أولاً في مشكلات GitHub الحالية ومناقشات OpenUSD Exchange SDK لمعرفة ما إذا كان أي شخص قد أبلغ عن شيء مماثل.
إذا لم يكن الأمر كذلك، فقم بإنشاء مشكلة GitHub جديدة أو موضوع منتدى يشرح الخطأ أو طلب الميزة.
بالنسبة للأخطاء، يرجى تقديم خطوات واضحة لإعادة إظهار المشكلة، بما في ذلك بيانات الفشل النموذجية حسب الحاجة.
للحصول على الميزات، يرجى تقديم قصص المستخدم وتفاصيل الشخصية (أي من الذي تساعده هذه الميزة وكيف تساعده).
سواء كنت تريد إضافة تفاصيل إلى مشكلة حالية أو إنشاء مشكلة جديدة، يرجى إعلامنا بالشركات المتأثرة.
ترخيص العينات موجود في LICENSE.md.
توجد إشعارات ترخيص الطرف الثالث للتبعيات المستخدمة بواسطة العينات في إشعارات ترخيص OpenUSD Exchange SDK.
مستندات OpenUSD - إنشاء أول مرحلة بالدولار الأمريكي
مستندات واجهة برمجة تطبيقات OpenUSD
مستندات مستخدم OpenUSD
موارد وتعلم NVIDIA OpenUSD
عينات كود OpenUSD
مستندات NVIDIA OpenUSD
مستندات NVIDIA OpenUSD Exchange SDK