Masa pakai objek dan sumber daya
Azure Remote Rendering membedakan antara dua jenis: objek dan sumber daya.
Masa pakai objek
Objek dianggap sebagai hal-hal yang dapat dibuat, dimodifikasi, dan dihancurkan oleh pengguna atas kebijakan mereka sendiri. Objek dapat diduplikasi secara bebas dan setiap instans dapat bermutasi dari waktu ke waktu. Akibatnya entitas dan komponen merupakan objek.
Masa pakai objek sepenuhnya di bawah kendali pengguna. Ini tidak terkait dengan masa pakai representasi sisi klien. Kelas seperti Entity
dan Component
memiliki fungsi Destroy
yang harus dipanggil untuk membatalkan alokasi objek pada host penyajian jarak jauh. Selain itu, Entity.Destroy()
akan menghancurkan entitas, anak-anaknya, dan semua komponen dalam hierarki itu.
Masa pakai sumber daya
Sumber daya adalah hal-hal yang seumur hidupnya sepenuhnya dikelola oleh host penyajian jarak jauh. Sumber daya adalah referensi yang dihitung secara internal. Sumber daya dibatalkan alokasinya saat tidak ada yang mereferensikannya lagi.
Sebagian besar sumber daya hanya dapat dibuat secara tidak langsung, biasanya dengan memuatnya dari file. Saat file yang sama dimuat beberapa kali, Azure Remote Rendering akan menampilkan referensi yang sama, dan tidak memuat data lagi.
Banyak sumber daya yang tidak dapat diubah, misalnya jala dan tekstur. Beberapa sumber daya dapat diubah, misalnya materi. Karena sumber daya sering dibagikan, memodifikasi sumber daya dapat memengaruhi beberapa objek. Misalnya, mengubah warna bahan akan mengubah warna semua objek yang menggunakan jala, yang pada gilirannya mereferensikan materi tersebut.
Sumber daya bawaan
Azure Remote Rendering berisi beberapa sumber daya bawaan, yang dapat dimuat dengan melakukan terlebih dahulu pengidentifikasi masing-masing dengan builtin://
selama panggilan ke RenderingSession.Connection.LoadXYZAsync()
. Sumber daya bawaan yang tersedia tercantum dalam dokumentasi untuk setiap fitur masing-masing. Misalnya, bab sky mencantumkan tekstur sky bawaan.
Masa pakai umum
Masa pakai semua objek dan sumber daya terikat pada koneksi. Pada pemutusan semuanya dibuang. Saat menyambungkan kembali ke sesi yang sama, grafik scene akan kosong dan semua sumber daya dihapus menyeluruh.
Dalam praktiknya, memuat sumber daya yang sama ke dalam sesi, setelah terputus, biasanya lebih cepat daripada pertama kali. Ini terjadi karena sebagian besar sumber daya harus diunduh dari Azure Storage untuk pertama kalinya, yang tidak diperlukan untuk kedua kalinya, menghemat banyak waktu.