Partager via


HolographicQuadLayer Classe

Définition

Représente une texture conservée que le système doit afficher à un emplacement spécifié au-dessus du contenu principal rendu de l’application.

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
Héritage
Object Platform::Object IInspectable HolographicQuadLayer
Attributs
Implémente

Configuration requise pour Windows

Famille d’appareils
Windows 10 Fall Creators Update (introduit dans 10.0.16299.0)
API contract
Windows.Foundation.UniversalApiContract (introduit dans v5.0)

Remarques

Une couche à quatre couches est une texture que le compositeur holographique du système restituera pour le compte de l’application à un emplacement spécifique dans le monde. Cela permet au compositeur d’échantillonner directement à partir de cette texture de quad lors de la production de l’image composite finale, ce qui améliore la qualité du texte et permet d’obtenir du contenu mondial de résolution inférieure. Contrairement à la mémoire tampon arrière en mode immédiat de la couche primaire, qui doit être remplie à chaque image, les quatre couches sont conservées. Une fois ajoutée à un HolographicCamera donné, chaque couche de quad continue à s’afficher à son emplacement spécifié au-dessus de la mémoire tampon de la couche principale de cette image jusqu’à ce que la couche quad soit déplacée, mise à jour ou supprimée.

Pour afficher les quatre couches, une application crée les instances HolographicQuadLayer nécessaires et les ajoute à la liste Mutable QuadLayers d’une HolographicCamera. Pour synchroniser une mise à jour à quatre couches conservée avec un frame holographique en mode immédiat donné, une application demande un HolographicQuadLayerUpdateParameters instance à partir de cette image en appelant HolographicFrame.GetQuadLayerUpdateParameters. Toutes les mises à jour demandées sur ce instance HolographicQuadLayerUpdateParameters s’appliquent à partir de ce frame.

Les applications peuvent positionner les quatre couches en mode stationnaire ou en mode relatif à l’affichage, ce qui affecte la façon dont elles sont positionnées dans les images futures si elles ne sont pas déplacées explicitement :

  • Pour un quad stationnaire, l’application appelle UpdateLocationWithStationaryMode pour spécifier la position spatiale et l’orientation dans le monde où une couche de quad doit apparaître. Cela définit un plan, ainsi que la taille 2D du quad dans ce plan centré autour de la position spécifiée.
  • Pour un quad relatif à l’affichage, l’application appelle UpdateLocationWithDisplayRelativeMode pour spécifier la position spatiale et l’orientation dans les coordonnées mondiales par rapport à l’affichage.

Les quatre couches sont rendues dans l’ordre spécifié à l’aide de l’algorithme du peintre, entièrement au-dessus de la couche primaire. Aucun test de profondeur n’est effectué lors du rendu. Une application qui déplace un quad devant un autre peut réorganiser les quads dans la liste des couches sans avoir à remplir les tampons de texture. Une application qui souhaite uniquement afficher les quatre couches, par exemple pendant les scènes de chargement, peut désactiver entièrement la couche primaire en définissant IsPrimaryLayerEnabled sur false.

Si une application n’a plus besoin d’une couche quad, elle peut désactiver cette couche en la supprimant de l’appareil photo, ce qui permet au système de récupérer les mémoires tampons de contenu qui lui sont allouées. Si l’application sait qu’elle est effectuée en permanence avec une couche, elle peut la fermer entièrement.

Notez que les objets HolographicQuadLayer peuvent utiliser et conserver des ressources basées sur l’appareil. Il est préférable de créer un HolographicQuadLayer une seule fois et de le réutiliser autant que possible, plutôt que de les créer et de les supprimer, par exemple chaque fois qu’un menu est généré. Les objets HolographicQuadLayer doivent être supprimés et recréés dans les scénarios de perte d’appareil Direct3D.

Constructeurs

HolographicQuadLayer(Size)

Crée une nouvelle couche de quatre couches avec une taille de texture spécifiée, en utilisant un format de pixel par défaut de DXGI_FORMAT_B8G8R8A8_UNORM.

HolographicQuadLayer(Size, DirectXPixelFormat)

Crée une nouvelle couche quad avec une taille de texture et un format de pixels spécifiés.

Propriétés

PixelFormat

Format de pixel pour la texture qui sauvegarde cette couche quad.

Size

Taille en pixels de la texture qui sauvegardera cette couche quad.

Méthodes

Close()

Ferme une couche quad, récupérant toutes les ressources système associées.

Dispose()

Exécute les tâches définies par l'application associées à la libération ou à la redéfinition des ressources non managées.

S’applique à