Aktualizowanie aplikacji platformy UWP 2D dla Windows Mixed Reality

Windows Mixed Reality pozwala użytkownikom zobaczyć hologramy tak, jakby były w ich pobliżu w świecie fizycznym i cyfrowym. W jego rdzeniu zarówno urządzenia HoloLens, jak i komputery stacjonarne, do których dołączasz immersywne akcesoria zestawu słuchawkowego, są Windows 10 urządzeniami. Możesz uruchamiać prawie wszystkie aplikacje platforma uniwersalna systemu Windows (UWP) w Sklepie jako aplikacje 2D.

Tworzenie aplikacji platformy UWP 2D dla rzeczywistości mieszanej

Pierwszym krokiem do wprowadzenia aplikacji 2D do zestawów słuchawkowych rzeczywistości mieszanej jest uruchomienie aplikacji jako standardowej aplikacji 2D na monitorze stacjonarnym.

Tworzenie nowej aplikacji platformy UNIWERSALNEJ systemu Windows 2D

Aby utworzyć nową aplikację 2D dla rzeczywistości mieszanej, należy utworzyć standardową aplikację platforma uniwersalna systemu Windows 2D (UWP). Do uruchomienia tej aplikacji jako łupka w rzeczywistości mieszanej nie są wymagane żadne inne zmiany aplikacji.

Aby rozpocząć tworzenie aplikacji platformy uniwersalnej systemu Windows 2D, zapoznaj się z artykułem Tworzenie pierwszej aplikacji .

Wprowadzanie istniejącej aplikacji ze Sklepu 2D do platformy UWP

Jeśli masz już aplikację 2D systemu Windows w Sklepie, upewnij się, że jest ona przeznaczona dla Windows 10 platforma uniwersalna systemu Windows (UWP). Poniżej przedstawiono wszystkie potencjalne punkty wyjścia, które możesz mieć w aplikacji ze Sklepu dzisiaj:

Punkt początkowy Element docelowy platformy manifestu AppX Jak zrobić to uniwersalne?
Windows Phone (Silverlight) Manifest aplikacji Silverlight Migrowanie do środowiska WinRT
Windows Phone 8.1 Universal 8.1 Manifest AppX, który nie zawiera elementu docelowego platformy Migrowanie aplikacji do platforma uniwersalna systemu Windows
Sklep Windows 8 8 Manifest AppX, który nie zawiera elementu docelowego platformy Migrowanie aplikacji do platforma uniwersalna systemu Windows
Windows Store 8.1 Universal 8.1 Manifest AppX, który nie zawiera elementu docelowego platformy Migrowanie aplikacji do platforma uniwersalna systemu Windows

Jeśli masz obecnie aplikację 2D Unity utworzoną jako aplikacja Win32 na komputerze PC, komputer Mac & obiekt docelowy kompilacji autonomicznej systemu Linux, przejdź do celu kompilacji platforma uniwersalna systemu Windows dla rzeczywistości mieszanej.

Omówimy sposoby ograniczania aplikacji do urządzenia HoloLens przy użyciu poniższej rodziny urządzeń Windows.Holographic.

Uruchamianie aplikacji 2D w Windows Mixed Reality immersywnym zestawie słuchawkowym

Jeśli aplikacja 2D została wdrożona na komputerze stacjonarnym i wypróbowana na monitorze, możesz wypróbować ją na immersywnym zestawie słuchawkowym dla komputerów stacjonarnych.

Wystarczy przejść do menu Start w zestawie słuchawkowym rzeczywistości mieszanej i uruchomić aplikację stamtąd. Powłoka klasyczna i powłoka holograficzna współużytkują ten sam zestaw aplikacji platformy UWP, więc aplikacja powinna być już obecna po wdrożeniu z programu Visual Studio.

Określanie docelowych zarówno immersywnych zestawów słuchawkowych, jak i HoloLens

Gratulacje! Aplikacja korzysta teraz z Windows 10 platforma uniwersalna systemu Windows (UWP).

Aplikacja jest teraz w stanie działać na dzisiejszych urządzeniach z systemem Windows, takich jak Desktop, Mobile, Xbox, Windows Mixed Reality immersywne zestawy nagłowne, HoloLens i przyszłe urządzenia z systemem Windows. Jednak aby faktycznie dotyczyć wszystkich tych urządzeń, należy upewnić się, że aplikacja jest przeznaczona dla systemu Windows. Rodzina urządzeń uniwersalnych.

Zmień rodzinę urządzeń na Windows.Universal

Teraz przejdźmy do manifestu AppX, aby upewnić się, że aplikacja platformy UWP Windows 10 może działać na urządzeniu HoloLens:

  • Otwórz plik rozwiązania aplikacji za pomocą programu Visual Studio i przejdź do manifestu pakietu aplikacji
  • Kliknij prawym przyciskiem myszy plik Package.appxmanifest w rozwiązaniu i przejdź do pozycji Wyświetl kod
    package.appxmanifest w Eksplorator rozwiązań
  • Upewnij się, że platforma docelowa to Windows. Uniwersalne w sekcji zależności
    <Dependencies>
      <TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.10240.0" MaxVersionTested="10.0.10586.0" />
    </Dependencies>
    
  • Zapisz!

Jeśli nie używasz programu Visual Studio dla środowiska programistycznego, możesz otworzyć AppXManifest.xml w wybranym edytorze tekstów, aby upewnić się, że jesteś przeznaczony dla elementu Windows.UniversalTargetDeviceFamily.

Uruchamianie w emulatorze urządzenia HoloLens

Teraz, gdy aplikacja platformy UWP jest przeznaczona dla elementu "Windows.Universal", skompilujmy aplikację i uruchomimy ją w emulatorze urządzenia HoloLens.

  • Upewnij się, że zainstalowano emulator urządzenia HoloLens.

  • W programie Visual Studio wybierz konfigurację kompilacji x86 dla aplikacji

    Konfiguracja kompilacji x86 w programie Visual Studio

  • Wybierz pozycję Emulator urządzenia HoloLens w menu rozwijanym miejsca docelowego wdrożenia

    Emulator urządzenia HoloLens na liście docelowej wdrożenia

  • Wybierz pozycję Debuguj > rozpocznij debugowanie , aby wdrożyć aplikację i rozpocząć debugowanie.

  • Emulator uruchomi i uruchomi aplikację.

  • Za pomocą klawiatury, myszy i kontrolera Xbox umieść aplikację na świecie, aby ją uruchomić.

    Emulator urządzenia HoloLens załadowany przy użyciu przykładu platformy UWP

Następne kroki

W tym momencie jedna z dwóch rzeczy może się zdarzyć:

  1. Po umieszczeniu jej w emulatorze aplikacja będzie widoczna jako powitalna i zacznie działać. Świetnie!
  2. Lub po wyświetleniu animacji ładowania hologramu 2D ładowanie zostanie zatrzymane i zobaczysz aplikację na ekranie powitalnym. Oznacza to, że coś poszło nie tak i zajmie więcej badań, aby zrozumieć, jak ożywić aplikację w Mixed Reality.

Musisz debugować, aby przejść do katalogu głównego możliwych problemów, które zatrzymują aplikację platformy UNIWERSALNEJ systemu Windows przed uruchomieniem na urządzeniu HoloLens.

Uruchamianie aplikacji platformy UWP w debugerze

Te kroki przeprowadzą Cię przez proces debugowania aplikacji platformy UWP przy użyciu debugera programu Visual Studio.

  • Jeśli jeszcze tego nie zrobiono, otwórz rozwiązanie w programie Visual Studio. Zmień element docelowy na Emulator urządzenia HoloLens i konfigurację kompilacji na x86.
  • Wybierz pozycję Debuguj > rozpocznij debugowanie , aby wdrożyć aplikację i rozpocząć debugowanie.
  • Umieść aplikację na świecie za pomocą myszy, klawiatury lub kontrolera Xbox.
  • Program Visual Studio powinien teraz przerwać gdzieś w kodzie aplikacji.
    • Jeśli aplikacja nie ulegnie natychmiastowej awarii lub nie włamie się do debugera z powodu nieobsługiwanego błędu, przejdź przez test podstawowych funkcji aplikacji, aby upewnić się, że wszystko jest uruchomione i funkcjonalne. Mogą pojawić się błędy, takie jak na poniższej ilustracji (obsługiwane wyjątki wewnętrzne). Aby upewnić się, że nie przegapisz błędów wewnętrznych, które wpływają na środowisko aplikacji, uruchom testy automatyczne i testy jednostkowe, aby upewnić się, że wszystko działa zgodnie z oczekiwaniami.

Emulator urządzenia HoloLens załadowany do przykładu platformy UWP z wyjątkiem systemu

Aktualizowanie interfejsu użytkownika

Teraz, gdy aplikacja platformy UNIWERSALNEJ systemu Windows działa na immersywnych zestawach nagłownych i holoLens jako hololensie 2D, następnie upewnimy się, że wygląda pięknie. Oto kilka kwestii, które należy wziąć pod uwagę:

  • Windows Mixed Reality wszystkie aplikacje 2D będą uruchamiane w stałej rozdzielczości i dpi, co odpowiada 853 x 480 pikseli. Zastanów się, czy projekt wymaga uściślenia na tej skali i zapoznaj się z poniższymi wskazówkami dotyczącymi projektowania, aby poprawić środowisko na urządzeniach HoloLens i immersywnych zestawów słuchawkowych.
  • Windows Mixed Reality nie obsługuje dynamicznych kafelków 2D. Jeśli podstawowe funkcje wyświetlają informacje na dynamicznym kafelku, rozważ przeniesienie tych informacji z powrotem do aplikacji lub eksplorowanie funkcji uruchamiania aplikacji 3D.

Rozdzielczość i współczynnik skalowania aplikacji 2D

Od dynamicznego projektu

Windows 10 przenosi cały projekt wizualny z rzeczywistych pikseli ekranu do efektywnych pikseli. Oznacza to, że deweloperzy projektują swój interfejs użytkownika zgodnie z wytycznymi dotyczącymi interfejsu Windows 10 dla efektywnych pikseli, a skalowanie systemu Windows zapewnia, że efektywne piksele są właściwym rozmiarem dla użyteczności urządzeń, rozdzielczości, DPI itd. Aby uzyskać więcej informacji, zobacz tę świetną lekturę w witrynie MSDN i tej prezentacji BUILD .

Nawet dzięki unikatowej możliwości umieszczania aplikacji na świecie na różnych dystansach zaleca się wyświetlanie jak tv, aby zapewnić najlepszą czytelność i interakcję z spojrzeniem/gestem. W związku z tym wirtualny łupek w Mixed Reality Home wyświetli płaski widok platformy UWP w:

1280x720, 150%DPI (853x480 pikseli efektywnych)

Ta rozdzielczość ma kilka zalet:

  • Ten skuteczny układ pikseli będzie miał mniej więcej taką samą gęstość informacji jak tablet lub mały pulpit.
  • Jest zgodny ze stałym dpi i efektywnymi pikselami dla aplikacji platformy UNIWERSALNEJ systemu Windows działających na konsoli Xbox One, co umożliwia bezproblemowe działanie na różnych urządzeniach.
  • Ten rozmiar wygląda dobrze w przypadku skalowania w obrębie naszego zakresu odległości operacyjnych dla aplikacji na świecie.

Najlepsze rozwiązania dotyczące projektowania interfejsu widoku aplikacji 2D

Zrobić:

  • Postępuj zgodnie z wytycznymi Windows 10 Human Interface Guidelines (HIG) dotyczącymi stylów, rozmiarów czcionek i rozmiarów przycisków. Urządzenie HoloLens wykona pracę, aby upewnić się, że aplikacja będzie miała zgodne wzorce aplikacji, czytelne rozmiary tekstu i odpowiednie rozmiary elementów docelowych trafień.
  • Upewnij się, że interfejs użytkownika jest zgodny z najlepszymi rozwiązaniami dotyczącymi dynamicznego projektowania , aby najlepiej przyjrzeć się unikatowej rozdzielczości i rozdzielczości DPI urządzenia HoloLens.
  • Użyj zaleceń dotyczących motywu kolorów "jasny" z systemu Windows.

Nie:

  • Zmiana interfejsu użytkownika zbyt drastycznie w rzeczywistości mieszanej, aby zapewnić użytkownikom znane środowisko w zestawie słuchawkowym i poza nim.

Omówienie modelu aplikacji

Model aplikacji dla rzeczywistości mieszanej jest przeznaczony do używania Mixed Reality Strona główna, w której wiele aplikacji działa razem. Można to traktować jako odpowiednik rzeczywistości mieszanej pulpitu, w którym uruchamiasz jednocześnie wiele aplikacji 2D. Ma to wpływ na cykl życia aplikacji, kafelki i inne kluczowe funkcje aplikacji.

Pasek aplikacji i przycisk Wstecz

Widoki 2D są ozdobione paskiem aplikacji nad ich zawartością. Pasek aplikacji ma dwa punkty personalizacji specyficznej dla aplikacji:

Tytuł: wyświetla nazwę wyświetlaną kafelka skojarzonego z wystąpieniem aplikacji

Przycisk Wstecz: wywołuje zdarzenie BackRequested po naciśnięciu klawisza . Widoczność przycisku wstecz jest kontrolowana przez systemNavigationManager.AppViewBackButtonVisibility.

Interfejs użytkownika paska aplikacji w widoku aplikacji 2D
Interfejs użytkownika paska aplikacji w widoku aplikacji 2D

Testowanie projektu aplikacji 2D

Ważne jest, aby przetestować aplikację, aby upewnić się, że tekst jest czytelny, przyciski są możliwe do kierowania, a ogólna aplikacja wygląda poprawnie. Można testować na zestawie słuchawkowym stacjonarnym, urządzeniu HoloLens, emulatorze lub urządzeniu dotykowym z rozdzielczością ustawioną na 1280x720 @150%.

Nowe możliwości wejściowe

Urządzenie HoloLens używa zaawansowanych czujników głębokości, aby zobaczyć świat i zobaczyć użytkowników. Umożliwia to wykonywanie zaawansowanych gestów dłoni, takich jak bloom i naciśnięcie powietrza. Zaawansowane mikrofony umożliwiają również korzystanie z funkcji głosowych.

Dzięki zestawom słuchawkowym dla komputerów stacjonarnych użytkownicy mogą używać kontrolerów ruchu do wskazywania aplikacji i podejmowania działań. Mogą również używać gamepadu, kierowania obiektów z ich spojrzeniem.

System Windows dba o całą tę złożoność dla aplikacji platformy UWP, tłumacząc spojrzenie, gesty, głos i dane wejściowe kontrolera ruchu na zdarzenia wskaźnika , które oddzielają mechanizm wprowadzania danych. Na przykład użytkownik mógł nacisnąć powietrze ręką lub ściągnąć wyzwalacz Select na kontrolerze ruchu, ale aplikacje 2D nie muszą wiedzieć, skąd pochodzą dane wejściowe - po prostu widzą naciśnięcie dotykowe 2D, jakby na ekranie dotykowym.

Poniżej przedstawiono ogólne pojęcia/scenariusze, które należy zrozumieć pod kątem danych wejściowych podczas przełączania aplikacji platformy UWP na urządzenie HoloLens:

  • Spojrzenie zamienia się w zdarzenia aktywowania, które mogą nieoczekiwanie wyzwalać menu, wysuwane lub inne elementy interfejsu użytkownika, aby wyskakować tylko przez spojrzenie wokół aplikacji.
  • Spojrzenie nie jest tak precyzyjne, jak wprowadzanie myszy. Używaj odpowiednich rozmiarów trafień dla urządzenia HoloLens, podobnie jak w przypadku aplikacji mobilnych przyjaznych dla dotyku. Małe elementy w pobliżu krawędzi aplikacji są szczególnie trudne do interakcji.
  • Użytkownicy muszą przełączać tryby wprowadzania, aby przejść z przewijania do przeciągania do dwóch przesuwania palcem. Jeśli aplikacja została zaprojektowana pod kątem wprowadzania danych dotykowych, rozważ, aby żadna główna funkcjonalność nie była zablokowana za dwoma palcami. Jeśli tak, rozważ użycie alternatywnych mechanizmów wejściowych, takich jak przyciski, które mogą rozpocząć przesuwanie dwóch palców. Na przykład aplikacja Maps może powiększać palcem, ale ma przycisk plus, minus i obróć, aby symulować te same interakcje powiększenia za pomocą pojedynczych kliknięć.

Wprowadzanie głosu jest krytyczną częścią środowiska rzeczywistości mieszanej. Włączyliśmy wszystkie interfejsy API rozpoznawania mowy, które są w Windows 10 zasilania Cortany podczas korzystania z zestawu nagłownego.

Publikowanie i obsługa aplikacji uniwersalnej

Gdy aplikacja jest uruchomiona, spakuj aplikację, aby przesłać ją do sklepu Microsoft Store.

Zobacz też