Bagikan melalui


HolographicQuadLayer Kelas

Definisi

Mewakili tekstur yang dipertahankan agar sistem ditampilkan di lokasi tertentu di atas konten utama aplikasi yang dirender.

public ref class HolographicQuadLayer sealed : IClosable
/// [Windows.Foundation.Metadata.Activatable(Windows.Graphics.Holographic.IHolographicQuadLayerFactory, 327680, "Windows.Foundation.UniversalApiContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 327680)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class HolographicQuadLayer final : IClosable
[Windows.Foundation.Metadata.Activatable(typeof(Windows.Graphics.Holographic.IHolographicQuadLayerFactory), 327680, "Windows.Foundation.UniversalApiContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 327680)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class HolographicQuadLayer : System.IDisposable
function HolographicQuadLayer(size, pixelFormat)
Public NotInheritable Class HolographicQuadLayer
Implements IDisposable
Warisan
Object Platform::Object IInspectable HolographicQuadLayer
Atribut
Penerapan

Persyaratan Windows

Rangkaian perangkat
Windows 10 Fall Creators Update (diperkenalkan dalam 10.0.16299.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v5.0)

Keterangan

Lapisan quad adalah tekstur yang akan dirender kompositori holografik sistem atas nama aplikasi di lokasi tertentu di dunia. Ini memungkinkan komposit untuk langsung mengambil sampel dari tekstur quad tersebut saat menghasilkan gambar komposit akhir, meningkatkan kualitas teks dan memungkinkan konten dunia resolusi lebih rendah. Tidak seperti buffer belakang mode langsung lapisan utama, yang harus diisi setiap bingkai, lapisan quad dipertahankan. Setelah ditambahkan ke HolographicCamera tertentu, setiap lapisan quad akan terus merender di lokasi yang ditentukan di atas buffer belakang lapisan utama bingkai tersebut sampai lapisan quad dipindahkan, diperbarui, atau dihapus.

Untuk menampilkan lapisan quad, aplikasi membuat instans HolographicQuadLayer yang diperlukan dan menambahkannya ke daftar QuadLayers HolographicCamera yang dapat diubah. Untuk menyinkronkan pembaruan lapisan quad yang dipertahankan dengan bingkai holografik mode langsung tertentu, aplikasi meminta instans HolographicQuadLayerUpdateParameters dari bingkai tersebut dengan memanggil HolographicFrame.GetQuadLayerUpdateParameters. Setiap pembaruan yang diminta pada instans HolographicQuadLayerUpdateParameters akan berlaku mulai dari bingkai tersebut.

Aplikasi dapat memposisikan lapisan quad dalam mode stasioner atau mode display-relative, yang memengaruhi bagaimana mereka diposisikan dalam bingkai di masa mendatang jika tidak dipindahkan secara eksplisit:

  • Untuk quad stasioner, aplikasi memanggil UpdateLocationWithStationaryMode untuk menentukan posisi spasial dan orientasi di dunia tempat lapisan quad akan muncul. Ini mendefinisikan bidang, bersama dengan ukuran 2D quad dalam bidang yang berpusat di sekitar posisi yang ditentukan.
  • Untuk quad relatif tampilan, aplikasi memanggil UpdateLocationWithDisplayRelativeMode untuk menentukan posisi spasial dan orientasi dalam koordinat dunia relatif terhadap tampilan.

Lapisan quad dirender dalam urutan yang ditentukan menggunakan algoritma pelukis, sepenuhnya di atas lapisan utama. Tidak ada pengujian kedalaman yang dilakukan saat penyajian. Aplikasi yang memindahkan satu quad di depan quad lain dapat menyusun ulang quad dalam daftar lapisan tanpa harus mengisi ulang buffer tekstur. Aplikasi yang hanya ingin merender lapisan quad, misalnya selama memuat adegan, dapat menonaktifkan lapisan utama sepenuhnya dengan mengatur IsPrimaryLayerEnabled ke false.

Jika aplikasi tidak lagi memerlukan lapisan quad, aplikasi dapat menonaktifkan lapisan tersebut dengan menghapusnya dari kamera, yang memungkinkan sistem untuk mengklaim kembali buffer konten yang dialokasikan untuk itu. Jika aplikasi tahu itu secara permanen dilakukan dengan lapisan, aplikasi dapat menutupnya sepenuhnya.

Perhatikan bahwa objek HolographicQuadLayer dapat menggunakan dan mempertahankan sumber daya berbasis perangkat. Lebih baik membuat HolographicQuadLayer sekali dan menggunakannya kembali sebanyak mungkin, dibandingkan dengan membuat dan membuangnya - misalnya, setiap kali menu dimunculkan. Objek HolographicQuadLayer harus dibuang dan dibuat ulang dalam skenario perangkat Direct3D yang hilang.

Konstruktor

HolographicQuadLayer(Size)

Membuat lapisan quad baru dengan ukuran tekstur tertentu, menggunakan format piksel default DXGI_FORMAT_B8G8R8A8_UNORM.

HolographicQuadLayer(Size, DirectXPixelFormat)

Membuat lapisan quad baru dengan ukuran tekstur dan format piksel tertentu.

Properti

PixelFormat

Format piksel untuk tekstur yang akan mendukung lapisan quad ini.

Size

Ukuran dalam piksel tekstur yang akan mendukung lapisan quad ini.

Metode

Close()

Menutup lapisan quad, mengklaim kembali sumber daya sistem terkait.

Dispose()

Melakukan tugas yang ditentukan aplikasi yang terkait dengan membebaskan, melepaskan, atau mereset sumber daya yang tidak terkelola.

Berlaku untuk