Tekst w unity
Tekst jest jednym z najważniejszych składników w aplikacjach holograficznej. Aby wyświetlić tekst w środowisku Unity, istnieją trzy typy składników tekstowych, których można użyć — tekst interfejsu użytkownika, siatka tekstu 3D i siatka tekstu Pro. Domyślnie tekst interfejsu użytkownika i siatka tekstu 3D są rozmyte i są zbyt duże. Zmiana kilku zmiennych powoduje ostrzejsze, wyższej jakości tekst o rozmiarze zarządzanym na urządzeniu HoloLens. Można osiągnąć lepszą jakość renderowania, stosując współczynnik skalowania w celu uzyskania odpowiednich wymiarów podczas korzystania ze składników usługi Text i 3D Text Mesh interfejsu użytkownika.
Rozmyty tekst domyślny w środowisku Unity
Praca z tekstem 3D aparatu Unity (text mesh) i tekstem interfejsu użytkownika
Aparat Unity zakłada, że wszystkie nowe elementy dodane do sceny to jedna jednostka aparatu Unity o rozmiarze lub 100% skali transformacji. Jedna jednostka aparatu Unity przekłada się na około 1 metr na urządzeniu HoloLens. W przypadku czcionek pole ograniczenia dla 3D TextMesh jest domyślnie włączone na wysokości około 1 metra.
Domyślny tekst 3D aparatu Unity (Text Mesh) zajmuje jedną jednostkę aparatu Unity, która wynosi 1 metr
Większość projektantów wizualizacji używa punktów do definiowania rozmiarów czcionek w świecie rzeczywistym. W 1 metrach znajduje się około 2835 (2834,6456666399962). Na podstawie konwersji systemu punktowego na 1 miernik i domyślny rozmiar czcionki siatki tekstu aparatu Unity 13, prosta matematyka 13 podzielona przez 2835 równa 0,0046 (0,0045861116, która zapewnia dobrą skalę standardową do rozpoczęcia od (niektóre mogą chcieć zaokrąglić do 0,005). Skalowanie obiektu tekstowego lub kontenera do tych wartości nie tylko pozwoli na konwersję rozmiarów czcionek 1:1 w programie projektowym, ale także zapewnia standard, dzięki czemu można zachować spójność w całym środowisku.
Skalowanie wartości tekstu 3D i tekstu interfejsu użytkownika aparatu Unity
Siatka tekstu 3D aparatu Unity ze zoptymalizowanymi wartościami
Podczas dodawania interfejsu użytkownika lub elementu tekstowego opartego na kanwie do sceny rozbieżność rozmiaru jest jeszcze większa. Różnice w dwóch rozmiarach to około 1000%, co spowoduje, że współczynnik skalowania składników tekstowych opartych na interfejsie użytkownika do 0,00046 (0,000458611116 ma być dokładny) lub 0,0005 dla zaokrąglonej wartości.
Tekst interfejsu użytkownika aparatu Unity z zoptymalizowanymi wartościami
Uwaga
Wartość domyślna dowolnej czcionki może mieć wpływ na rozmiar tekstury tej czcionki lub sposób importowania czcionki do aparatu Unity. Te testy zostały wykonane na podstawie domyślnej czcionki Arial w środowisku Unity, a także jednej innej zaimportowanej czcionki.
Praca z usługą Text Mesh Pro
Dzięki usłudze Text Mesh Pro aparatu Unity można zabezpieczyć jakość renderowania tekstu. Obsługuje on ostre kontury tekstu niezależnie od odległości przy użyciu techniki SDF (Signed Distance Field ). Korzystając z tej samej metody obliczania, która została użyta powyżej dla siatki tekstu 3D i tekstu interfejsu użytkownika, możemy znaleźć odpowiednie wartości skalowania do użycia z konwencjonalnymi punktami typograficznymi. Ponieważ domyślna czcionka 3D Text Mesh Pro o rozmiarze 36 ma rozmiar ograniczenia 2,5 jednostek aparatu Unity (2,5 m), możemy użyć wartości skalowania 0,005, aby uzyskać rozmiar punktu. Usługa Text Mesh Pro w menu interfejsu użytkownika ma domyślny rozmiar ograniczenia 25 jednostek aparatu Unity (25 m). Daje to 0,0005 dla wartości skalowania.
Skalowanie wartości tekstu i interfejsu użytkownika aparatu Unity 3D
Zalecany rozmiar tekstu
Jak można się spodziewać, rozmiary typów używane na komputerze lub tablecie (zazwyczaj od 12 do 32 pkt) wyglądają na niewielką odległość od 2 metrów. Zależy to od cech każdej czcionki, ale ogólnie zalecany minimalny kąt widzenia i wysokość czcionki pod kątem czytelności to około 0,35°-0,4°/12,21-13,97 mm na podstawie naszych badań nad użytkownikami. To około 35-40 pkt z współczynnikiem skalowania wprowadzonym powyżej.
W przypadku bliskiej interakcji na poziomie 0,45 m (45 cm) minimalna czytelna czcionka kąt widzenia i wysokość to 0,4°-0,5° / 3,14–3,9mm. Jest to około 9-12 pkt z współczynnikiem skalowania wprowadzonym powyżej.
Zawartość zakresu interakcji w zasięgu zbliżonym do i dalekiego zakresu interakcji
Minimalny czytelny rozmiar czcionki
Odległość | Kąt | Wysokość tekstu | Rozmiar czcionki |
---|---|---|---|
45 cm (bezpośrednia odległość manipulowania) | 0.4°-0.5° | 3.14–3.9mm | 8.9–11.13 pkt |
2 m | 0.35°-0.4° | 12.21–13.97mm | 34.63-39.58 pkt |
Wygodnie czytelny rozmiar czcionki
Odległość | Kąt | Wysokość tekstu | Rozmiar czcionki |
---|---|---|---|
45 cm (bezpośrednia odległość manipulowania) | 0.65°-0.8° | 5,1–6,3 mm | 14.47-17.8 pkt |
2 m | 0.6°-0.75° | 20,9–26,2 mm | 59.4-74.2 pkt |
Interfejs użytkownika Segoe (czcionka domyślna dla systemu Windows) działa dobrze w większości przypadków. Należy jednak unikać używania lekkich lub półświetlonych rodzin czcionek o małym rozmiarze, ponieważ cienkie pociągnięcia pionowe będą wibrować i obniży czytelność. Nowoczesne czcionki o wystarczającej grubości pociągnięcia działają dobrze. Na przykład Helvetica i Arial wyglądają wspaniale i są czytelne w HoloLens z regularnymi lub odważnymi wagami.
odległości, kąta i wysokości tekstu
Tekst z zestawem narzędzi Mixed Reality Toolkit w wersji 2
Ostra jakość renderowania tekstu z odpowiednim wymiarem
Na podstawie tych czynników skalowania utworzyliśmy prefabrykaty tekstowe z tekstem interfejsu użytkownika i siatką tekstu 3D. Deweloperzy mogą używać tych prefabów, aby uzyskać ostry tekst i spójny rozmiar czcionki.
Ostra jakość renderowania tekstu z odpowiednim wymiarem
Cieniowania z obsługą oklusionu
Domyślny materiał czcionki aparatu Unity nie obsługuje okluzji. W związku z tym domyślnie zobaczysz tekst za obiektami. Dołączyliśmy prostą cieniację, która obsługuje okluzji. Na poniższej ilustracji przedstawiono tekst z domyślnym materiałem czcionki (po lewej) i tekstem z odpowiednim okluzji (po prawej).
Cieniowania z obsługą oklusionu
Następny punkt kontrolny programowania
Jeśli obserwujesz określoną przez nas podróż do opracowywania aparatu Unity, jesteś w środku eksplorowania podstawowych bloków konstrukcyjnych zestawu NARZĘDZI MRTK. W tym miejscu możesz przejść do następnego bloku konstrukcyjnego:
Możesz też przejść do Mixed Reality możliwości platformy i interfejsów API:
Zawsze możesz wrócić do punktów kontrolnych programowania aparatu Unity w dowolnym momencie.