Untuk menambahkan font ke proyek Anda, Anda perlu menempatkan file font di folder Aset Anda. Unity kemudian akan secara otomatis mengimpornya. Format Font yang didukung adalah Font TrueType (.ttf file) dan OpenType Fonts (.otf file).
Untuk mengubah Size dari font, menyorotinya di Project View dan Anda memiliki sejumlah pilihan di Import Settings di InspectorJendela Unity yang menampilkan informasi tentang Pengaturan GameObject yang dipilih saat ini, aset atau proyek, memungkinkan Anda untuk memeriksa dan mengedit nilai. More info
Lihat di Glossary.
Property: | Function: |
---|---|
Font Size | Ukuran font, berdasarkan ukuran yang ditetapkan dalam prosesor kata apa pun. |
Rendering mode | Mode rendering font, yang memberi tahu Unity bagaimana menerapkan kelancaran ke glyphs. |
Character | Set karakter font untuk mengimpor ke tekstur font |
Menyiapkan mode ini ke penyebab dinamis Unity untuk menumpuk data font itu sendiri dan render font glyphs pada runtime (lihat di bawah). |
Pengaturan impor spesifik untuk font dinamis
Property: | Function: |
---|---|
Include Font Data | Pengaturan ini mengontrol kemasan font ketika digunakan dengan properti font dinamis. Ketika memilih TTF disertakan dalam output build. Ketika tidak memilih diasumsikan bahwa pengguna akhir akan memiliki font yang sudah diinstal pada mesin mereka. Perhatikan bahwa font tunduk pada hak cipta dan Anda hanya harus menyertakan font yang telah Anda lisensikan atau dibuat untuk diri sendiri. |
Font Names | Daftar font fallback untuk digunakan ketika font atau karakter tidak tersedia (lihat di bawah). |
Setelah Anda mengimpor font, Anda dapat memperluas font di Project View untuk melihat bahwa itu memiliki beberapa aset yang dihasilkan otomatis. Dua aset dibuat selama impor: “bahan font” dan “tekstur font”. Tidak seperti banyak aplikasi yang mungkin Anda akrab dengan, font di Unity diubah menjadi tekstur, dan glyphs yang Anda tampilan dirender menggunakan quadsObjek primitif yang menyerupai pesawat tetapi tepinya hanya satu unit panjang, hanya menggunakan 4 simpul, dan permukaan berorientasi pada pesawat XY ruang koordinat lokal. More info
Lihat di Glossary bertekstur. Menyesuaikan ukuran font secara efektif mengubah berapa banyak pixelsUnit terkecil dalam gambar komputer. Ukuran piksel tergantung pada resolusi layar Anda. Pencahayaan pixel dihitung pada setiap piksel layar. More info
Lihat di Glossary digunakan untuk setiap glyph dalam tekstur yang dihasilkan ini. Aset Teks MeshGrafik utama primitif Unity. Mesh membuat sebagian besar dunia 3D Anda. Unity mendukung mesh poligon triangulat atau Quadrangulasi. Nurbs, Nurms, permukaan Subdiv harus dikonversi ke poligon. More info
Lihat di Glossary bertekstur geometri 3d dengan tekstur font yang dihasilkan otomatis ini. Anda akan ingin berbagai ukuran font untuk membuat aset ini terlihat crisp.
Ketika Anda mengatur drop-down Characters di Pengaturan Impor ke Dynamic, Unity tidak akan menghasilkan tekstur dengan semua karakter font. Alih-alih, itu akan menggunakan mesin rendering font FreeType untuk membuat tekstur di terbang. Ini memiliki keuntungan yang dapat menyimpan dalam ukuran download dan memori tekstur, terutama ketika Anda menggunakan font yang umumnya disertakan dalam sistem pengguna, sehingga Anda tidak perlu menyertakan data font, atau ketika Anda perlu mendukung bahasa asia atau ukuran font besar (yang akan membuat tekstur font sangat besar menggunakan tekstur font normal).
Ketika Unity mencoba untuk membuat teks dengan font dinamis, tetapi tidak dapat menemukan font (karena Include Font Data tidak dipilih, dan font tidak diinstal pada mesin pengguna), atau font tidak termasuk glyph yang diminta (seperti ketika mencoba untuk membuat teks di skrip Asia timur menggunakan font latin, atau ketika menggunakan teks tebal /italik), maka itu akan mencoba masing-masing font yang tercantum di bidang Font Names, untuk melihat apakah itu dapat menemukan font yang cocok dengan nama font di proyek (dengan data font disertakan) atau diinstal pada mesin gph yang diminta. Jika tidak ada font fallback yang terdaftar hadir dan memiliki glyph yang diminta, Unity akan jatuh kembali ke daftar global yang dikodekan keras dari font fallback, yang berisi berbagai font internasional yang umumnya dipasang pada platform runtime saat ini.
Perhatikan bahwa beberapa platform target (WebGL, beberapa konsol) tidak memiliki font default OS Unity dapat mengakses untuk membuat teks. Untuk platform tersebut, Include Font Data akan diabaikan, dan data font akan selalu disertakan. Semua font yang akan digunakan sebagai fallback harus disertakan dalam proyek, jadi jika Anda perlu untuk membuat teks internasional atau versi bold /italic dari font, Anda perlu menambahkan file font yang memiliki karakter yang diperlukan untuk proyek, dan mengatur bahwa font dalam daftar Font Names dari font lain yang harus menggunakannya sebagai fallbacks. Jika font diatur dengan benar, font fallback akan tercantum dalam inspektur Pengimpor Font, sebagai Referensi ke font lain dalam proyek.
Aset font default adalah font dinamis yang diatur untuk menggunakan Arial. Jika Unity tidak dapat menemukan font Arial di komputer Anda (misalnya, jika Anda tidak menginstalnya), itu akan jatuh kembali ke font yang dibundel dengan Unity disebut Liberation Sans.
Liberation Sans terlihat seperti Arial, tetapi tidak termasuk gaya font berani atau italic, dan hanya memiliki set karakter Latin dasar - jadi teks yang bergaya atau karakter non-latin dapat jatuh kembali ke font lain atau gagal untuk render. Namun ini memiliki lisensi yang memungkinkan untuk dimasukkan dalam membangun pemain.
Untuk membuat font kustom pilih 'Create-> font kustom' dari jendela proyek. Ini akan menambahkan aset font kustom ke perpustakaan proyek Anda.
Bidang Ascii Start Offset adalah desimal yang menentukan indeks Ascii Anda ingin memulai indeks Character Rects Anda dari. Misalnya, jika Ascii Start Offset Anda diatur ke 0 maka surat modal A akan di indeks 65 tetapi jika Ascii Start Offset diatur ke 65 maka surat A akan di indeks 0. Anda dapat berkonsultasi dengan Ascii Table here tetapi Anda harus ingat bahwa font kustom menggunakan sistem pencatatan ascii desimal.
Tracking dapat diatur untuk memodifikasi bagaimana menutup setiap karakter akan menjadi karakter berikutnya pada garis yang sama dan Line spacing dapat diatur untuk menentukan bagaimana menutup setiap garis akan ke depan.
Untuk membuat bahan font Anda perlu mengimpor font Anda sebagai tekstur kemudian menerapkan tekstur itu ke bahan, lalu seret bahan font Anda ke bagian Default Material.
Bagian Character Rects adalah di mana setiap karakter font Anda didefinisikan.
Bidang Size adalah untuk mendefinisikan berapa banyak karakter dalam font Anda.
Dalam setiap Element ada bidang indeks untuk indeks ascii dari karakter. Ini akan menjadi bilangan bulat yang mewakili karakter dalam elemen ini.
Untuk mengerjakan nilai UV yang Anda butuhkan untuk mengetahui bagaimana karakter Anda diposisikan pada skala 0 hingga 1. Anda membagi 1 dengan jumlah karakter pada dimensi. Misalnya jika Anda memiliki font dan dimensi gambar di dalamnya adalah 256x128, 4 karakter, 2 turun (sehingga 64x64), maka lebar UV akan 0,25 dan tinggi UV akan 0,5.
Untuk UV X dan Y, itu hanya masalah menentukan karakter yang Anda inginkan dan multiplying lebar atau tinggi nilai kali kolom / alis surat.
Ukuran Vert didasarkan pada ukuran pixel karakter misalnya karakter Anda adalah setiap 128x128, menempatkan 128 dan -128 ke Lebar Vert dan Tinggi akan memberikan huruf proporsional. Vert Y harus negatif.
Advance akan menjadi jarak horizontal yang diinginkan dari asal karakter ini ke asal karakter berikutnya dalam pixel. Ini dikalikan oleh Tracking ketika menghitung jarak yang sebenarnya.
Unity memiliki dukungan unicode penuh. Teks Unicode memungkinkan Anda untuk menampilkan karakter Jerman, Prancis, Denmark atau Jepang yang biasanya tidak didukung dalam set karakter ASCII. Anda juga dapat memasukkan banyak karakter tujuan khusus yang berbeda seperti tanda panah atau tanda kunci opsi, jika font Anda mendukungnya.
Untuk menggunakan karakter unicode, pilihlah Unicode atau Dynamic dari drop-down Characters di Pengaturan Import. Sekarang Anda dapat menampilkan karakter unicode dengan font ini. Jika Anda menggunakan Text MeshLogin Komponen mesh yang menampilkan string Teks More info
Lihat di Glossary, Anda dapat memasukkan karakter unicode ke bidang Komponen TextSepotong teks non-interaktif untuk pengguna. Ini dapat digunakan untuk menyediakan pembatasan atau label untuk kontrol GUI lainnya atau untuk menampilkan instruksi atau teks lainnya. More info
Lihat di Glossary di Inspektur.
Anda juga dapat menggunakan karakter unicode jika Anda ingin mengatur teks yang ditampilkan dari scripting. C# compiler sepenuhnya mendukung Unicode berdasarkan scriptsSepotong kode yang memungkinkan Anda untuk membuat Komponen Anda sendiri, memicu peristiwa permainan, memodifikasi sifat komponen dari waktu ke waktu dan menanggapi input pengguna dengan cara apa pun yang Anda sukai. More info
Lihat di Glossary. Anda harus menyimpan skrip Anda dengan pengkodean UTF-16. Sekarang Anda dapat menambahkan karakter unicode ke string di script Anda dan mereka akan ditampilkan seperti yang diharapkan dalam UnityGUI atau Teks Mesh.
Perhatikan bahwa pasangan surrogate tidak didukung.
Ada cara yang berbeda untuk mengubah warna font yang ditampilkan, tergantung pada bagaimana font digunakan.
Jika Anda menggunakan Teks Mesh, Anda dapat mengubah warnanya dengan menggunakan MaterialAset yang menentukan bagaimana permukaan harus diberikan. More info
Lihat di Glossary kustom untuk font. Dalam Tampilan Proyek, klik pada Create > Material, dan pilih dan atur Bahan yang baru dibuat di Inspector. Pastikan Anda menetapkan tekstur dari aset font ke materi. Jika Anda menggunakan corak GUI/Text Shader built-in untuk bahan font, Anda dapat memilih warna di properti Text Color dari bahan.
Jika Anda menggunakan skrip UnityGUI untuk menampilkan font Anda, Anda memiliki lebih banyak kontrol atas warna font dalam keadaan yang berbeda. Untuk mengubah warna font, Anda membuat GUISkin dari Assets > Create > GUI Skin, dan menentukan warna untuk keadaan kontrol tertentu, misalnya Label > Normal > Text Color. Untuk detail lebih lanjut, silakan baca Login Halaman kulit.