在Unigine中是支持中文顯示的。主要做法內容如下:
1)將中文字體放入data目錄下,任意位置都可以,格式必須是ttf .
2) 調用Unigine::Gui::get()->setFont("你剛纔使用的字體名字");
之後類似下面的代碼做給演示
Unigine::Gui::get()->setFont("ZCOOLXiaoWei-Regular.ttf");
WidgetButtonPtr butRemoveAll = WidgetButton::create(Gui::get());
butRemoveAll->arrange();
butRemoveAll->setText(" 世界。你好 ");
butRemoveAll->setPosition(200, 50);
butRemoveAll->release();
//butRemoveAll->setCallback0(Gui::CLICKED, MakeCallback(this, &AppWorldLogic::onButtonRemoveClicked));
Gui::get()->addChild(butRemoveAll->getWidget(), Gui::ALIGN_OVERLAP | Gui::ALIGN_FIXED);
3)最後說一下一個大坑。這個文件的編碼格式必須是utf8 -without BOM
這個可以在你的VS編輯器中或其餘文本編輯器中確定。
Unicode , UTF8 with BOM , GB2312什麼的,都是不行的。
具體原因不確定,可能是內部使用解析TTF的字體庫FreeType什麼的問題?
或者是unicode字符轉換的內部BUG問題?