• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            勤能補拙,Expter

            成都游戲Coder,記錄游戲開發過程的筆記和心得!

            基于CEGUI的StaticText的超級鏈接實現

                基本上實現一個基于靜態文本多任務的過程.

            注:主要針對當前CEGUI的最新庫0.7.1。

            目的:游戲制作過程中一般打開NPC會彈出一個對話框,一般對話框就是顯示一段話,有圖片,超鏈接,文字,同時文本分別有不同的顏色!
            那么只要我們輸入一段文本,對話框的控件解析文本定義好的標簽然后顯示所有文本內容和圖片即可。

            實現方式: 
            1.超鏈接控件既要響應點擊消息,又要有超級鏈接標記的下劃線。實現方式主要參考了Button的Clicked事件,StaticText的render渲染過程,重新寫的一個基于超級鏈接組件。
            2.文本解析利用了當前CEGUI的版本的BasicRenderedStringParser類,我們只需要繼承此類,然后設置系統默認的文本解析類為我們當前的類。
            3.寫超級鏈接組件的渲染過程主要方便支持CELayoutEditor的可視化編輯。

            實現結果:
            1.文本顯示顏色。
            2.換行操作。
            3.支持超級鏈接的顯示,以及事件響應和事件處理,事件響應為CEGUI::HyperText::EventClicked。
            4.超鏈接的下劃線繪制。
            5.支持圖片顯示和支持圖片事件響應。


            假設我們的解析文本如下:
            標簽定義如下
            [N]則是換行字符
            [C]字體顏色
            [A]超級鏈接
            [M]圖片

            相對來說編寫此文本比較簡單.

            具體用法
            xxx             顯示文本xxx
            [C  XX]      xx表示32位的字體顏色
            [A 1: XX]   xx 超級鏈接顯示內容。
            [M  xx]       xx表示圖片名字

            colorTest:[N]
            StaticTxt test1![N]
            [C FFFF0000]StaticTxt test2!    [N]
            [C FFFFFF00]StaticTxt test3!   [N] [N] [N]

            [C FFFF0000]HyperLink Test:  [N]
            [A 1:this is the Hyperlink!this is the  Hyperlink!][N]
            [A 2:this is the second Hyperlink! this is hyperlink!!!][N]
            [A 3:this is the third hyperlink!this is hyperlink!this is hyperlink!this is hyperlink!]
            [N] [N] [N]
            Image Text:[M 381] [M 286] [M 669]


            具體過程:


            后期目標支持動畫的顯示,比如GIF格式圖片.

            實現過程相對繁瑣,而且涉及datafiles配置一些處理。

            可能真正游戲界面上的實現可能會更豐富,其實也就是增加幾個標簽然后解析即可。


            注:上次聽蓋老板說有本書專門介紹足球AI,然后專門去買了,看其介紹他實現上足球仿真AI專門實現比較智能,先學習學習他的在繼續寫我的了。。

            posted on 2010-07-22 22:12 expter 閱讀(2775) 評論(9)  編輯 收藏 引用 所屬分類: 其他學習筆記工作筆記算法與數據結構

            評論

            # re: 基于CEGUI的StaticText的超級鏈接實現 2010-07-23 08:42 ccsdu2009

            注:上次聽蓋老板說有本書專門介紹足球AI,然后專門去買了,看其介紹他實現上足球仿真AI專門實現比較智能,先學習學習他的在繼續寫我的了。
            看到上次你寫的 很容易聯想到那本書
            比較當前游戲人工智能書就那么幾本  回復  更多評論   

            # re: 基于CEGUI的StaticText的超級鏈接實現[未登錄] 2010-07-30 09:59 StarX

            我們之前支持動畫顯示時是先用WTL把gif文件拆成單圖,再把它一張一張的畫出來。  回復  更多評論   

            # re: 基于CEGUI的StaticText的超級鏈接實現[未登錄] 2010-07-30 09:59 StarX

            @ccsdu2009
            可以推薦是哪幾本嗎?  回復  更多評論   

            # re: 基于CEGUI的StaticText的超級鏈接實現 2010-07-31 11:21 expter

            @StarX
            確實,我現在也是通過這個方法實現的。  回復  更多評論   

            # re: 基于CEGUI的StaticText的超級鏈接實現 2010-12-02 13:46 Chhawk

            學習了,請問:你說的“重新寫的一個基于超級鏈接組件”是指StaticText的組件,還是指新增加一個控件呢?盼復  回復  更多評論   

            # re: 基于CEGUI的StaticText的超級鏈接實現 2010-12-02 14:43 lz

            @Chhawk
            就是寫了一個有staticText和超鏈接的新控件 HyperLink  回復  更多評論   

            # re: 基于CEGUI的StaticText的超級鏈接實現 2010-12-03 11:21 Chhawk

            @lz
            謝謝回復,不知道下劃線你是怎么實現的?  回復  更多評論   

            # re: 基于CEGUI的StaticText的超級鏈接實現 2010-12-03 15:55 lz

            @Chhawk
            用一張圖片實現的。
            根據字的長短,繪制圖片的長短。  回復  更多評論   

            # re: 基于CEGUI的StaticText的超級鏈接實現 2011-07-27 11:48 馬古斯

            @lz
            和我想的一樣,下劃線用圖片,空開一定距離渲染。
            但是網上說有更簡單的方法,不知道是什么  回復  更多評論   

            亚洲va久久久噜噜噜久久狠狠| 韩国三级大全久久网站| 久久亚洲sm情趣捆绑调教 | 久久无码国产专区精品| 欧美一区二区三区久久综| 久久综合九色综合精品| 一级a性色生活片久久无| 亚洲第一极品精品无码久久| 99久久综合国产精品二区| 香蕉aa三级久久毛片| 久久精品嫩草影院| 成人久久免费网站| 久久久久亚洲av毛片大| 青草影院天堂男人久久| 亚洲va中文字幕无码久久不卡| 国产精品狼人久久久久影院| 色综合久久无码中文字幕| 精品久久久无码中文字幕天天| 精品蜜臀久久久久99网站| 一本一道久久a久久精品综合| 国产免费久久精品99久久| 久久久久亚洲AV片无码下载蜜桃| 久久综合九色综合欧美就去吻| 国产美女久久久| 丁香五月网久久综合| 久久久久亚洲av无码专区喷水| 久久无码高潮喷水| 青青热久久国产久精品| 欧美性大战久久久久久| 久久精品夜色噜噜亚洲A∨| 99久久综合国产精品二区| 国产亚洲婷婷香蕉久久精品| 69SEX久久精品国产麻豆| 精品国产福利久久久| 国产精品一区二区久久| 久久香蕉综合色一综合色88| 久久久久久久久久久久中文字幕| 色婷婷久久综合中文久久蜜桃av| 99久久精品国产一区二区| 性做久久久久久久| 九九久久自然熟的香蕉图片|