Dela via


Uppdatera 2D UWP-appar för Windows Mixed Reality

Med Windows Mixed Reality kan användarna se hologram som om de finns runt dem i den fysiska och digitala världen. I grunden är både HoloLens och stationära datorer som du kopplar uppslukande headsettillbehör till Windows 10-enheter. Du kan köra nästan alla Universell Windows-plattform appar (UWP) i Store som 2D-appar.

Skapa en 2D UWP-app för mixad verklighet

Det första steget för att ta en 2D-app till headset för mixad verklighet är att få igång din app som en standard 2D-app på din skrivbordsskärm.

Skapa en ny 2D UWP-app

Om du vill skapa en ny 2D-app för mixad verklighet skapar du en UWP-standardapp (2D Universell Windows-plattform). Inga andra appändringar krävs för att appen ska kunna köras som en skiffer i mixad verklighet.

Om du vill komma igång med att skapa en 2D UWP-app kan du läsa artikeln Skapa din första app .

Ta med en befintlig 2D Store-app till UWP

Om du redan har en 2D Windows-app i Store kontrollerar du att den är riktad mot Windows 10 Universell Windows-plattform (UWP). Här är alla möjliga utgångspunkter som du kan ha med din Store-app idag:

Startpunkt AppX-manifestplattformsmål Hur man gör detta Universell?
Windows Phone (Silverlight) Silverlight-appmanifest Migrera till WinRT
Windows Phone 8.1 Universal 8.1 AppX-manifest som inte innehåller plattformsmål Migrera din app till Universell Windows-plattform
Windows Store 8 8 AppX-manifest som inte innehåller plattformsmål Migrera din app till Universell Windows-plattform
Windows Store 8.1 Universal 8.1 AppX-manifest som inte innehåller plattformsmål Migrera din app till Universell Windows-plattform

Om du har en 2D Unity-app som idag har skapats som en Win32-app på pc, mac och linux fristående byggmål byter du till Universell Windows-plattform build-målet för mixad verklighet.

Vi kommer att prata om hur du kan begränsa din app specifikt till HoloLens med hjälp av Windows.Holographic-enhetsfamiljen nedan.

Kör din 2D-app i ett uppslukande Windows Mixed Reality-headset

Om du har distribuerat din 2D-app till en stationär dator och provat den på bildskärmen är du redo att prova den på ett uppslukande skrivbordsheadset!

Gå bara till Start-menyn i headsetet för mixad verklighet och starta appen därifrån. Skrivbordsgränssnittet och det holografiska gränssnittet delar båda samma uppsättning UWP-appar, och därför bör appen redan finnas när du har distribuerat från Visual Studio.

Rikta in sig på både uppslukande headset och HoloLens

Grattis! Din app använder nu Windows 10 Universell Windows-plattform (UWP).

Din app kan nu köras på dagens Windows-enheter som Desktop, Mobile, Xbox, Windows Mixed Reality-headset, HoloLens och framtida Windows-enheter. Men för att faktiskt rikta in dig på alla dessa enheter måste du se till att din app riktar in sig på Windows. Universell enhetsfamilj.

Ändra enhetsfamiljen till Windows.Universal

Nu ska vi gå in i AppX-manifestet för att se till att din Windows 10 UWP-app kan köras på HoloLens:

  • Öppna appens lösningsfil med Visual Studio och gå till apppaketmanifestet
  • Högerklicka på filen Package.appxmanifest i lösningen och gå till Visa kod
    package.appxmanifest i Solution Explorer
  • Kontrollera att målplattformen är Windows. Universell i avsnittet beroenden
    <Dependencies>
      <TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.10240.0" MaxVersionTested="10.0.10586.0" />
    </Dependencies>
    
  • Spara!

Om du inte använder Visual Studio för din utvecklingsmiljö kan du öppna AppXManifest.xml i valfri textredigerare för att säkerställa att du riktar in dig på Windows.Universal TargetDeviceFamily.

Kör i HoloLens-emulatorn

Nu när UWP-appen är avsedd för "Windows.Universal" ska vi skapa din app och köra den i HoloLens-emulatorn.

  • Kontrollera att du har installerat HoloLens-emulatorn.

  • I Visual Studio väljer du x86-byggkonfigurationen för din app

    x86-byggkonfiguration i Visual Studio

  • Välj HoloLens Emulator i listrutan distributionsmål

    HoloLens-emulator i distributionsmållistan

  • Välj Felsökning > Starta felsökning för att distribuera din app och börja felsöka.

  • Emulatorn startar och kör appen.

  • Med ett tangentbord, en mus och en Xbox-kontrollant placerar du din app i världen för att starta den.

    HoloLens-emulatorn har lästs in med ett UWP-exempel

Nästa steg

I det här läget kan en av två saker hända:

  1. Appen visar sitt stänk och börjar köras när den har placerats i emulatorn! Toppen!
  2. Eller när du ser en inläsningsanimation för ett 2D-hologram stoppas inläsningen och appen visas bara på välkomstskärmen. Det innebär att något gick fel och att det krävs mer undersökning för att förstå hur du kan väcka din app till liv i Mixed Reality.

Du måste felsöka för att komma till roten för möjliga problem som hindrar UWP-appen från att starta på HoloLens.

Köra UWP-appen i felsökningsprogrammet

De här stegen vägleder dig genom felsökning av UWP-appen med hjälp av Visual Studio-felsökningsprogrammet.

  • Om du inte redan har gjort det öppnar du lösningen i Visual Studio. Ändra målet till HoloLens-emulatorn och byggkonfigurationen till x86.
  • Välj Felsökning > Starta felsökning för att distribuera din app och börja felsöka.
  • Placera appen i världen med musen, tangentbordet eller Xbox-handkontrollen.
  • Visual Studio bör nu brytas någonstans i din appkod.
    • Om din app inte omedelbart kraschar eller bryter sig in i felsökningsprogrammet på grund av ett ohanterat fel går du igenom ett testpass av appens kärnfunktioner för att se till att allt körs och fungerar. Du kan se fel som på bilden nedan (interna undantag som hanteras). Se till att du inte missar interna fel som påverkar appens upplevelse genom att köra igenom dina automatiserade tester och enhetstester för att se till att allt fungerar som förväntat.

HoloLens-emulatorn har lästs in med ett UWP-exempel som visar ett systemfel

Uppdatera användargränssnittet

Nu när UWP-appen körs på uppslukande headset och HoloLens som ett 2D-hologram ser vi till att det ser vackert ut. Här är några saker att tänka på:

  • Windows Mixed Reality kör alla 2D-appar med en fast upplösning och DPI som motsvarar 853 x 480 effektiva bildpunkter. Tänk på om din design behöver förfinas i den här skalan och granska designvägledningen nedan för att förbättra din upplevelse av HoloLens och uppslukande headset.
  • Windows Mixed Reality stöder inte 2D-livepaneler. Om din kärnfunktion visar information på en live-panel kan du överväga att flytta tillbaka informationen till din app eller utforska 3D-appstartare.

2D-appvymatchning och skalningsfaktor

Från dynamisk design

Windows 10 flyttar all visuell design från verkliga skärmpixlar till effektiva bildpunkter. Det innebär att utvecklare utformar sitt användargränssnitt enligt Riktlinjerna för mänskligt gränssnitt i Windows 10 för effektiva pixlar och Windows-skalning säkerställer att de effektiva pixlarna är rätt storlek för användbarhet mellan enheter, upplösningar, DPI och så vidare. Mer information finns i den här bra läsningen på MSDN och den här BUILD-presentationen .

Även med den unika möjligheten att placera appar i din värld på olika avstånd, rekommenderas TV-liknande visningsavstånd för att ge bästa läsbarhet och interaktion med blick/gest. På grund av detta visar en virtuell skiffer i Mixed Reality Home din platta UWP-vy på:

1280x720, 150%DPI (853x480 effektiva bildpunkter)

Den här lösningen har flera fördelar:

  • Den här effektiva pixellayouten har ungefär samma informationsdensitet som en surfplatta eller ett litet skrivbord.
  • Den matchar de fasta DPI:erna och effektiva pixlar för UWP-appar som körs på Xbox One, vilket möjliggör sömlösa upplevelser mellan enheter.
  • Den här storleken ser bra ut när den skalas över våra olika driftsavstånd för appar i världen.

Metodtips för 2D-appvygränssnittsdesign

Göra:

  • Följ riktlinjerna för Windows 10 Human Interface (HIG) för format, teckenstorlekar och knappstorlekar. HoloLens utför arbetet för att säkerställa att appen har kompatibla appmönster, läsbara textstorlekar och lämplig storlek på träffmål.
  • Se till att användargränssnittet följer bästa praxis för dynamisk design för att se bäst ut på HoloLens unika upplösning och DPI.
  • Använd rekommendationer för "ljust" färgtema från Windows.

Gör inte:

  • Ändra användargränssnittet för drastiskt när det är i mixad verklighet för att se till att användarna har en välbekant upplevelse in och ut ur headsetet.

Förstå appmodellen

Appmodellen för mixad verklighet är utformad för att använda Mixed Reality Home, där många appar bor tillsammans. Tänk på detta som motsvarigheten till mixad verklighet på skrivbordet, där du kör många 2D-appar samtidigt. Detta påverkar appens livscykel, paneler och andra viktiga funktioner i din app.

Appfält och bakåtknapp

2D-vyer är dekorerade med ett appfält ovanför innehållet. Appfältet har två punkter med appspecifik anpassning:

Rubrik: Visar visningsnamnet för panelen som är associerad med appinstansen

Bakåtknapp: genererar händelsen BackRequested när den trycks ner. Bakåtknappssynlighet styrs av SystemNavigationManager.AppViewBackButtonVisibility.

Användargränssnitt för appfält i 2D-appvy
Användargränssnitt för appfält i 2D-appvy

Testa 2D-appens design

Det är viktigt att testa appen för att se till att texten är läsbar, att knapparna är målbara och att den övergripande appen ser korrekt ut. Du kan testa på ett skrivbordsheadset, en HoloLens, en emulator eller en pekenhet med upplösningen inställd på 1280x720 @150 %.

Nya indatamöjligheter

HoloLens använder avancerade djupsensorer för att se världen och se användare. Detta möjliggör avancerade handgester som bloom och air-tap. Kraftfulla mikrofoner möjliggör också röstupplevelser.

Med Desktop-headset kan användarna använda rörelsestyrenheter för att peka på appar och vidta åtgärder. De kan också använda en spelplatta som riktar in sig på objekt med blicken.

Windows tar hand om all denna komplexitet för UWP-appar och översätter din blick, gester, röst och rörelsekontrollant till pekarhändelser som abstraherar bort indatamekanismen. En användare kan till exempel ha gjort en lufttryckning med handen eller tryckt på Select-utlösaren på en rörelsestyrenhet, men 2D-program behöver inte veta var indata kom ifrån – de ser bara en 2D-tryckpress, som på en pekskärm.

Här är de övergripande begrepp/scenarier som du bör förstå för indata när du tar din UWP-app till HoloLens:

  • Blicken förvandlas till hovringshändelser, som oväntat kan utlösa menyer, utfällbara objekt eller andra användargränssnittselement som dyker upp bara genom att titta runt i din app.
  • Blicken är inte lika exakt som musinmatning. Använd träffmål med lämplig storlek för HoloLens, ungefär som touchvänliga mobilprogram. Små element nära appens kanter är särskilt svåra att interagera med.
  • Användare måste växla indatalägen för att gå från rullning till att dra till två fingerpanorering. Om din app har utformats för pekindata bör du överväga att se till att inga större funktioner är låsta bakom två fingerpanorering. I så fall bör du överväga att ha alternativa indatamekanismer som knappar som kan starta två fingerpanorering. Till exempel kan maps-appen zooma med två fingerpanorering men har en plus-, minus- och rotationsknapp för att simulera samma zoominteraktioner med enkla klick.

Röstinmatning är en viktig del av mixad verklighet. Vi har aktiverat alla tal-API:er som finns i Windows 10 och driver Cortana när du använder ett headset.

Publicera och underhålla din universella app

När appen är igång kan du paketera din app för att skicka den till Microsoft Store.

Se även