Prefab teks — MRTK2

Prefab ini dioptimalkan untuk kualitas rendering dalam Windows Mixed Reality. Untuk informasi selengkapnya, silakan baca panduan Teks di Unity di Microsoft Windows Dev Center.

Prefabs

3DTextPrefab

Prefab Text Mesh 3D (Aset/MRTK/SDK/StandardAssets/Prefabs/Text) dengan faktor penskalaan yang dioptimalkan pada jarak 2 meter. (Silakan baca petunjuk di bawah)

UITextPrefab

Prefab Text Mesh UI (Aset/MRTK/SDK/StandardAssets/Prefabs/Text) dengan faktor penskalaan yang dioptimalkan pada jarak 2 meter. (Silakan baca petunjuk di bawah)

Font

Font sumber terbuka (Aset/MRTK/Core/StandardAssets/Font) disertakan dalam Mixed Reality Toolkit.

Penting

Prefab Teks menggunakan font sumber terbuka 'Selawik'. Untuk menggunakan Prefab Teks dengan font yang berbeda, impor file font dan ikuti instruksi di bawah ini. Contoh di bawah ini menunjukkan cara menggunakan font 'Segoe UI' dengan Prefab Teks.

Mengimpor file font UI Segoe

  1. Tetapkan tekstur font ke bahan 3DTextSegoeUI.mat.

    Menetapkan tekstur font

  2. Pada bahan 3DTextSegoeUI.mat, pilih shader Custom/3DTextShader.shader.

    Menetapkan shader

  3. Tetapkan font UI Segoe dan bahan 3DTextSegoeUI ke komponen teks di prefab.

    Menetapkan file dan materi font

Bekerja dengan Font di Unity

Saat menambahkan TextMesh 3D baru ke adegan di Unity ada dua masalah yang terlihat secara visual. Satu, font tampak sangat besar dan dua, font tampak sangat buram. Juga menarik untuk memperhatikan bahwa nilai Ukuran Font default diatur ke nol di Inspektur. Mengganti nilai nol ini dengan 13 tidak akan menunjukkan perbedaan ukuran, karena 13 sebenarnya adalah nilai default.

Unity mengasumsikan semua elemen baru yang ditambahkan ke adegan berukuran 1 Unity Unity, atau skala Transformasi 100%, yang diterjemahkan menjadi sekitar 1 meter pada HoloLens. Dalam kasus font, kotak pembatas untuk TextMesh 3D masuk, secara default dengan tinggi sekitar 1 meter.

Skala Font dan Ukuran Font

Sebagian besar desainer visual menggunakan Poin untuk menentukan ukuran font di dunia nyata, serta program desain mereka. Ada sekitar 2835 titik (2,834.645666399962) dalam 1 meter. Berdasarkan konversi sistem titik menjadi 1 meter dan Ukuran Font TextMesh default Unity 13, matematika sederhana 13 dibagi dengan 2835 sama dengan 0,0046 (0,00458611116 tepatnya) memberikan skala standar yang baik untuk memulai, meskipun beberapa mungkin ingin membulatkan ke 0,005.

Bagaimanapun, penskalaan objek Teks atau kontainer ke nilai-nilai ini tidak hanya akan memungkinkan konversi ukuran font 1:1 dari program desain, tetapi juga menyediakan standar untuk mempertahankan konsistensi di seluruh aplikasi atau game.

Teks UI

Saat menambahkan elemen Teks berbasis UI atau kanvas ke adegan, perbedaan ukuran lebih besar. Perbedaan dalam dua ukuran adalah sekitar 1000%, yang akan membawa faktor skala untuk komponen Teks berbasis UI menjadi 0,00046 (0,000458611116 tepatnya) atau 0,0005 untuk nilai bulat.

Penafian: Nilai default font apa pun dapat dipengaruhi oleh ukuran tekstur font tersebut atau bagaimana font diimpor ke Unity. Pengujian ini dilakukan berdasarkan font Arial default di Unity, serta satu font impor lainnya.

Ukuran font dengan faktor penskalakan

Text3DSelawik.mat

Bahan untuk 3DTextPrefab dengan dukungan oklusi. Membutuhkan 3DTextShader.shader

Bahan Font Default vs bahan 3DTextSegoeUI

Text3DShader.shader

Shader untuk 3DTextPrefab dengan dukungan oklusi.