在cocos2dx 中如何使用中文

2021-07-02 20:13:26 字數 1310 閱讀 9647

最近在做乙個比較搞怪的遊戲,遊戲風格就是一種比較坑爹的型別,需要新增一些文字,當做彈幕使用,在遊戲中新增彈幕這個應該屬於第一次吧 。

首先大家應該想到的是很簡單的用label中新增文字如下所示

auto _label = label::create("舉例一", "verdana-bold", fontsize);

使用lable可以直接建立出來。但是執行起來會發現錯誤,就是會出現亂碼問題。

查詢各種資料找到答案,,由於windows 下的visual studio建立的源程式檔案是採用gbk編碼,我找到的書上的解決方式是修改檔案的儲存方式,

將需要使用的cpp檔案儲存為utf-8的格式即可,,在visual studio中選擇 檔案-> 高階選項 -> 在彈出的對話方塊選擇編碼為 unicode(utf-8 無簽名) 

但是可惜的是這種方式我試過沒成功。你可以試試看,既然是寫在書上出版的肯定是有道理的。

那麼我採用的方式是什麼呢???

就是網上普遍說的由於講中文寫在**中編譯會出現錯位。而且遇到大量的中文會不好修改**,所以我採用的方式是將文字寫在xml檔案當中,並且

進行讀取。

先來看看xml檔案的格式

<?xml version="1.0" encoding="utf-8"?>

guanqia

關卡mubiao

目標fen

分highestscore

歷史最高分

lianji

連擊增加

shengyu

等等那是什麼跑那麼快的 這遊戲居然有彈幕不科學啊

gesdfdsa

shenmogui1

什麼鬼啊!怪居然吃到蘑菇了!!

shenmogui2

靠 這 這 還能變大啊!!

shenmogui3

大大大大大算了不玩了!!

moguyoudu

額 o(╯□╰)o 沒人告訴我蘑菇有毒啊

jiangli

這個遊戲絕逼不科學

可以看到標籤以及內容,按照上面的格式可以書寫自己的檔案。

那麼如何在cocos2dx中讀取到xml檔案呢???

string gamescene::chineseword(const char* wordid)

示例**如上所示將xml**中的key和value放在了乙個map裡邊 這樣的話當傳入乙個key的值就會對應的返回乙個string的值

然後將string的值放在label 中即可。。

cocos2d x中精靈的使用

精靈是2d遊戲中得主角,這次就總結一下cocos2d x中精靈的使用。一,載入 首先,建立乙個變數 ccsprite psprite 載入函式分為兩組initwith x和spritewith x,其主要的區別是使用initwith x的手工作業,而spritewith x是純自動化作業。在spri...

cocos2d x 中的使用CURL

cocos2d x中將curl做為第三方庫加入進來,它被放在cocos2dx platform third party 使用curl,需要包含它的標頭檔案,我當前使用的cocos2d x的版本為2.2.3,我們可以看到建立好工程後,專案的include 路徑列表如下 從上圖中,我們可以看出,這個版本...

Cocos2d x中luajit的使用

新版本的cocos2d x使用了luajit來替代原始的lua,好處一是可以極大的提高執行速度 android下可以開jit,執行速度提高10 60倍,ios下不可以開jit,執行速度也可以提高2 3倍 二是luajit編譯的位元組碼現階段來說無法反編譯,也就是說無法破解。這裡對luajit進行詳細...