عمر العنصر والموارد

يميز Azure Remote Rendering بين نوعين: الكائنات والموارد.

مدة بقاء الكائن

تعتبر الكائنات أشياء يمكن للمستخدم إنشاؤها وتعديلها وإتلافها وفقا لتقديره الخاص. قد يتم تكرار الكائنات بحرية ويمكن لكل مثيل أن يتحول بمرور الوقت. وبالتالي فإن الكيانات والمكونات هي كائنات.

مدة بقاء الكائنات تحت تحكم المستخدم بالكامل. ومع ذلك، فإنه لا يرتبط بمدة بقاء التمثيل من جانب العميل. الفئات مثل Entity و Component لها دالة Destroy يجب استدعاؤها لإزالة تخصيص الكائن على مضيف العرض البعيد. بالإضافة إلى ذلك، Entity.Destroy() سيدمر الكيان وتوابعه وجميع المكونات في هذا التسلسل الهرمي.

عمر المورد

الموارد هي أشياء تتم إدارة مدة بقائها بالكامل من قبل مضيف العرض عن بعد. الموارد مرجع يتم حسابها داخليا. يتم إلغاء تخصيصها عندما لا يشير إليها أحد بعد الآن.

يمكن إنشاء معظم الموارد بشكل غير مباشر فقط، عادة عن طريق تحميلها من ملف. عند تحميل نفس الملف عدة مرات، سيعيد Azure Remote Rendering المرجع نفسه، ولن يقوم بتحميل البيانات مرة أخرى.

العديد من الموارد غير قابلة للتغيير، على سبيل المثال شبكات ومواد. ومع ذلك، فإن بعض الموارد قابلة للتغيير، على سبيل المثال المواد. نظرا لأن الموارد غالبا ما تتم مشاركتها، فقد يؤثر تعديل مورد على كائنات متعددة. على سبيل المثال، سيؤدي تغيير لون المادة إلى تغيير لون جميع العناصر التي تستخدم الشبكات، والتي بدورها تشير إلى تلك المادة.

الموارد المضمنة

يحتوي Azure Remote Rendering على بعض الموارد المضمنة، والتي يمكن تحميلها عن طريق إلحاق المعرف الخاص بها أثناء builtin:// استدعاء .RenderingSession.Connection.LoadXYZAsync() يتم سرد الموارد المضمنة المتوفرة في الوثائق لكل ميزة. على سبيل المثال، يسرد فصل السماء مواد السماء المضمنة.

مدة البقاء العامة

مدة بقاء جميع الكائنات والموارد مرتبطة بالاتصال. عند قطع الاتصال، يتم تجاهل كل شيء. عند إعادة الاتصال بنفس جلسة العمل، سيكون الرسم البياني للمشهد فارغا ويتم إزالة جميع الموارد.

في الممارسة العملية، عادة ما يكون تحميل نفس المورد في جلسة عمل، بعد قطع الاتصال، أسرع من المرة الأولى. هذا هو الحال لأنه يجب تنزيل معظم الموارد من Azure Storage في المرة الأولى، وهو أمر غير ضروري في المرة الثانية، ما يوفر قدرا كبيرا من الوقت.

الخطوات التالية