close




首先把 Windows\Fonts 裡面的中文字形,拉到 Project 任意處,等待 Unity3D 把字形轉換成 Texture。

記得要確定字形是以 Unicode 的方式呈現,不然就要到上圖中的選單去選擇。若有更動,要點右下角的 Apply。

接著 Create 一個 GUISkin。

點選該 GUISkin ,如上圖,在右邊選擇剛才拉進來的中文字形。

然後,新增一個 GameObject。

再 Creat 一個 C# Script 檔案。

如上圖,把新的 Script 檔案 Attach 到新增的 GameObject 上。

如上圖,在 inspector 下方,將新的 Script 檔案選擇要參考剛才的 Skin。

再來這一步很容易忽略,可是結果卻是天差地遠。

如果這步沒弄好,雖然可以看到英文字被顯示,中文卻會看不見。

(註:這步其實並非絕對必要,但是在安裝好 Unity3D 之後,從來都沒顯示過中文字形的電腦上,似乎一定得先經過此步驟,讓它第一次正常顯示,之後就不必非得加這個 Tag 了。本文最後面有說明。)

如上圖,新 GameObject 的 Tag 內定選項是 “Untagged” ,若維持這樣的話,就會看不到中文字。

如上圖,將新 GameObject 的 Tag 改選其他項目,確認過 Player 或 MainCamera 一定可以,其他 Tag 則還沒時間測試。

如上圖,Source Code 大約是寫這樣,詳細的功能說明在官方網站有。

如上圖,結果就出現中文字了。

如上圖,若沒弄好 Tag 那裡,就會出現這種中文字直接被濾掉的結果。

推測這應該是 Unity 的 Bug。

因為,一旦成功一次以後,之後再怎麼把 Tag 拔除,變成 Untagged ,甚至重開新專案也都可以正常顯示中文字。或許是 Unity 去寫了什麼系統參數的關係吧? (很奇怪!)
= ,, =

也可能是一開始步驟不熟,有什麼順序顛倒之類的,就無法出現正常結果。熟了以後按照Unity 工程師設計的既定程序,就可以順利完成。

arrow
arrow
    全站熱搜

    toropot 發表在 痞客邦 留言(2) 人氣()