• <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
            和我想的一樣,下劃線用圖片,空開一定距離渲染。
            但是網上說有更簡單的方法,不知道是什么  回復  更多評論   

            青青青国产成人久久111网站| 欧美激情一区二区久久久| 久久综合88熟人妻| 久久综合色之久久综合| 老色鬼久久亚洲AV综合| 久久伊人亚洲AV无码网站| 99re这里只有精品热久久| 亚洲精品97久久中文字幕无码| 欧美喷潮久久久XXXXx| 蜜臀久久99精品久久久久久| 精品永久久福利一区二区| 日韩人妻无码一区二区三区久久| 久久久久国产一区二区| 久久美女人爽女人爽| 国内精品久久久久影院一蜜桃| 亚洲精品乱码久久久久久蜜桃 | 国产精品一久久香蕉国产线看观看| 久久强奷乱码老熟女| 久久九九免费高清视频| 久久无码人妻精品一区二区三区| 国产精品久久久久乳精品爆 | 久久精品国产乱子伦| 久久夜色tv网站| 一本伊大人香蕉久久网手机| 久久久久久国产a免费观看不卡| 久久久久亚洲精品中文字幕 | 久久午夜电影网| 中文字幕久久精品| 久久国产乱子伦精品免费强| 欧美成a人片免费看久久| 99久久香蕉国产线看观香| 99久久国产主播综合精品| 久久综合亚洲鲁鲁五月天| 97久久超碰国产精品2021| 99久久做夜夜爱天天做精品| 色婷婷综合久久久久中文一区二区| 久久久久久久99精品免费观看| 久久91精品国产91久| 久久久中文字幕日本| 99热热久久这里只有精品68| 精品久久久中文字幕人妻 |