Récemment, Apple a lancé le Vision Pro et j'ai eu la chance d'en devenir l'heureux propriétaire. Depuis lors, j'ai été profondément engagé dans le développement de mon application et dans l'exploration de diverses applications et tendances au sein de l'App Store Vision Pro.
Une chose qui a retenu mon attention est que de nouvelles applications sortent chaque jour, mais seules quelques-unes s'adaptent bien à l'expérience immersive de réalité virtuelle. Je suppose que de nombreux développeurs ont du mal à trouver de la documentation et des exemples sur les fonctionnalités de Vision Pro. Cependant, l'utilisation des capacités de Vision Pro peut distinguer votre application et offrir aux utilisateurs une expérience améliorée.
Dans cet article, je partagerai quelques trucs et astuces que j'ai découverts lors de la création de ma candidature. Ces conseils aideront non seulement votre application à se démarquer, mais garantiront également son intégration transparente et sa sensation native dans VisionOS.
Je suis sûr que vous avez remarqué que lors du visionnage d'une vidéo ou d'une photo, l'arrière-plan derrière la fenêtre est assombri, dans les paramètres, cela s'appelle "auto-gradation". Pour obtenir le même effet, vous devez utiliser .preferredSurroundingsEffect(.systemDark)
sur votre vue, puis l'espace autour de l'utilisateur s'assombrira et votre fenêtre restera lumineuse, cela aidera à rester concentré sur le contenu.
Lors de la visualisation d'une vidéo ou d'un contenu, vous souhaitez que l'utilisateur ne soit pas distrait et crée l'effet d'une fenêtre flottant dans les airs, pour cela Apple nous a donné la possibilité de masquer la barre inférieure de la fenêtre utilisée pour se déplacer ou se fermer. la fenêtre actuelle. Avec .persistentSystemOverlays(.hidden)
vous pouvez masquer cette barre de contrôle sur votre fenêtre, elle disparaîtra avec l'animation par défaut et n'apparaîtra que lorsque l'utilisateur interagit avec la fenêtre.
Si vous ouvrez l'application Apple TV standard et allumez un film, vous remarquerez que la fenêtre du film a un reflet qui change à chaque image, donnant un effet plus immersif. Pour obtenir un effet lumineux autour de votre vidéo, vous devez utiliser VideoPlayerComponent
et activer isPassthroughTintingEnabled
, l'effet sera alors le même que dans Apple TV ou HBO Max. Voici ce que dit la documentation :
Il s'agit d'activer la teinte pass-through pendant la lecture vidéo qui apparaît autour de la vidéo en prenant la couleur moyenne de l'image et en teintant le pass-through avec cette couleur pour mettre en valeur la vidéo.
Vous souhaiterez peut-être empêcher l'utilisateur de redimensionner la fenêtre, il existe un moyen de le faire :
onAppear { guard let windowScene = UIApplication.shared.connectedScenes.first as?UIWindowScene else { return } windowScene.requestGeometryUpdate(.Vision(resizingRestrictions: UIWindowScene.ResizingRestrictions.none)) }
Vous pouvez également spécifier des paramètres de taille supplémentaires dans cette méthode. La signature complète de la méthode ressemble à ceci :
windowScene.requestGeometryUpdate(.Vision(size:, minimumSize:, maximumSize:, resizingRestrictions:))
Si votre application utilise un espace immersif et que vous ne voulez pas que l'utilisateur voie ses mains, ou que vous souhaitez les remplacer par des mains virtuelles, comme cela se fait dans AmazeVR, alors vous devez utiliser .upperLimbVisibility(.hidden)
Je suis sûr que vous avez vu des barres latérales dans les applications VisionOS qui ressemblent à TabBars
. Apple a introduit une nouvelle méthode View
pour VisionOS qui vous permet « d'agrandir » la fenêtre et d'ajouter des ornements de chaque côté de celle-ci.
.ornament( visibility: .visible, attachmentAnchor: .scene(.bottom), contentAlignment: .center ) { HStack { Button("Play", systemImage: "play.fill") { } Button("Stop", systemImage: "stop.fill") { } } .labelStyle(.iconOnly) .padding(.all) .glassBackgroundEffect() }
Un fait intéressant que j'ai pu vérifier expérimentalement est que les méthodes de CMMotionManager ne fonctionnent que dans un espace immersif et non dans la vue normale de la fenêtre.
VisionOS fournit de nombreux outils pour créer des applications immersives qui amènent les utilisateurs dans le monde virtuel et leur donnent le sentiment d'en faire partie. Alors que de plus en plus d'applications sont publiées pour Vision Pro, seules quelques-unes utilisent toute sa gamme de fonctionnalités. C'est là qu'intervient votre chance de vous distinguer : utilisez-les et profitez-en. Malheureusement, les développeurs ont du mal à trouver une documentation et des exemples facilement accessibles. C'est pourquoi j'écris cet article. J'espère que mes conseils vous aideront à améliorer votre candidature.