Szöveg előrefab

Ezek az előzetes beállítások a renderelési minőségre vannak optimalizálva a Windows Mixed Reality. További információért olvassa el a Text in Unity on Microsoft Windows Fejlesztői központ.

Előzetesfabs (Előzetesfabs)

3DTextPrefab (3DTextPrefab)

3D Text Mesh-előfab (Assets/MRTK/SDK/StandardAssets/Prefabs/Text) optimalizált skálázási tényező 2 méter távolságban. (Olvassa el az alábbi utasításokat)

UITextPrefab (Felhasználói felület szövege)

Ui Text Mesh-előrefab (Assets/MRTK/SDK/StandardAssets/Prefabs/Text) optimalizált, 2 méter távolságú skálázású tényezővel. (Olvassa el az alábbi utasításokat)

Betűtípusok

Az eszközkészletben található nyílt forráskódú betűtípusok (Assets/MRTK/Core/StandardAssets/Fonts) Mixed Reality tartalmaznak.

Fontos

A Text Prefab a "Se fogkis" nyílt forráskódú betűtípust használja. Ha más betűtípussal is használni kívánt szövegelőzét, importálja a betűkészletfájlt, és kövesse az alábbi utasításokat. Az alábbi példa bemutatja, hogyan használható a "Segoe UI" betűkészlet a Text Prefab szöveggel.

Betűkészlet Segoe UI fájl importálása

  1. Rendelje hozzá a betűtípus textúraját a 3DTextSegoeUI.mat anyaghoz.

    Betűi textúra hozzárendelése

  2. A 3DTextSegoeUI.mat anyagon válassza ki a Custom/3DTextShader.shader árnyékolót.

    Árnyékoló hozzárendelése

  3. Rendeljen Segoe UI 3DTextSegoeUI-anyagot az előfedőben található szövegösszetevőkhöz.

    Betűfájl és anyag hozzárendelése

Betűtípusok használata a Unityben

Amikor új 3D TextMesh-et ad hozzá egy Unity-jelenethez, két probléma látható. Az egyik, hogy a betűméret nagyon nagy, kettő, a betűtípus pedig nagyon homályos. Azt is érdekes lehet látni, hogy az Inspectorban az alapértelmezett Betűméret értéke nulla. Ha ezt a nulla értéket 13-ra cseréli, az nem mutat különbséget a méretben, mivel valójában a 13 az alapértelmezett érték.

A Unity feltételezi, hogy a jelenethez hozzáadott összes új elem 1 Unity Unit méretű, vagyis 100%-os transzformációs skálával, amely körülbelül 1 m-re van lefordítva a HoloLens. Betűtípusok esetén a 3D TextMesh határolókerete alapértelmezés szerint körülbelül 1 méter magasságú.

Betűméret és betűméret

A legtöbb vizuális tervező a Points (Pontok) használatával határozza meg a betűméreteket a való világban, valamint a tervezőprogramokat. Körülbelül 2835 (2 834,64566639962) pont van 1 méterben. A pontrendszer 1 mérőre konvertálása és a Unity alapértelmezett TextMesh Font Size értéke 13 alapján a 13 2835-rel való osztása egyszerű matematikai értéke 0,0046 (0,004586111116, hogy pontosak szerint) jó szabványos méretet biztosít, bár egyesek 0,0005-re kerekítést is okozhatnak.

A Text objektum vagy tároló ezen értékekre való skálázása nem csupán a tervezőprogramban használt betűméretek 1:1-es átalakítását teszi lehetővé, hanem szabványt is biztosít az alkalmazás vagy a játék konzisztenciájának fenntartásához.

Felhasználói felület szövege

Amikor felhasználói felületet vagy vászonalapú Szöveg elemet ad hozzá egy jelenethez, a méret eltérése továbbra is nagyobb. A két méret eltérése körülbelül 1000%, ami a felhasználói felületalapú szövegösszetevők méretezési tényezőit 0,00046 -ra (0,000458611111116) vagy 0,0005-re tenné a kerekített értékhez.

Jogi nyilatkozat:A betűtípusok alapértelmezett értékét a betűtípus textúramérete vagy a betűtípus Unitybe való importálásának módja befolyásolja. Ezeket a teszteket a Unity alapértelmezett Arial-betűtípusa, valamint egy másik importált betűkészlet alapján hajtottuk végre.

Betűméret méretezési tényezőkkel

Text3DSelawik.mat

Material for 3DTextPrefab with occlusion support.material for 3DTextPrefab with occlusion support. Ehhez a 3DTextShader.shader szükséges

Alapértelmezett betűtípus és 3DTextSegoeUI anyag

Text3DShader.shader

Shader for 3DTextPrefab with occlusion support .shader for 3DTextPrefab with occlusion support.