• <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>
            Cpper
            C/C++高級(jí)工程師 Android高級(jí)軟件工程師 IT集成工程師 音頻工程師 熟悉c,c++,java,c#,py,js,asp等多種語(yǔ)言 程序猿
            先上一個(gè)使用例子
            #include <BGE/All>

            using namespace bge;

            Window
            * createButton(const std::string& name,const String& text)
            {
                Button
            * button = new Button(0,text);
                button
            ->setName(name);
                button
            ->setSize(Vector2f(92,42));
                
            return button;
            }

            int main(int argc, char* argv[])
            {
                FileSystem::instance().initial(argv[
            0]);
                FileSystem::instance().setResourcePackage(
            "data.zip");
                WindowManager::instance().initialize(
            "simkai.ttf",false);

                Device
            * device = Device::create();
                device
            ->initial();
                device
            ->createWindow(640,480,bge::String("BGE Window"));

                Panel
            * panel = new Panel(FloatRect(30,30,192,180),0);
                GridLayout
            * layout = new GridLayout();
                panel
            ->setLayout(layout);
                std::vector
            <float> widths;
                widths.push_back(
            0.0f);
                layout
            ->setColumnWidths(widths);

                std::vector
            <float> heights;
                
            for(int k = 0; k < 3++k)
                    heights.push_back(
            48.0f);
                heights.push_back(
            0.0f);
                layout
            ->setRowHeights(heights);

                GridCellInfo info;
                info.columnIndex_ 
            = 0; info.rowIndex_ = 0; layout->addWindow(createButton("button1",L"按鍵"),info);
                info.columnIndex_ 
            = 1; info.rowIndex_ = 0; layout->addWindow(createButton("button2",L"按鍵"),info);
                info.columnIndex_ 
            = 0; info.rowIndex_ = 1; layout->addWindow(createButton("button3",L"按鍵"),info);
                info.columnIndex_ 
            = 1; info.rowIndex_ = 1; layout->addWindow(createButton("button4",L"按鍵"),info);
                info.columnIndex_ 
            = 0;
                info.rowIndex_ 
            = 2;
                info.horizontalSpan_ 
            = 2;
                Window
            * edit = new EditField(NULL,L"Edit Text");
                edit
            ->setSize(Vector2f(196,36));
                layout
            ->addWindow(edit,info);
                info.columnIndex_ 
            = 0;
                info.rowIndex_ 
            = 3;
                info.horizontalSpan_ 
            = 3;
                layout
            ->arrangeWithin();

                FrameWindow
            * window = new FrameWindow();
                window
            ->enableMovement();
                window
            ->setText(L"BGE窗體");
                window
            ->setClientPanel(panel);

                WindowManager::instance().addWindow(window);

                
            while(device->isRunning())
                {
                    device
            ->preRender();
                    WindowManager::instance().update();
                    device
            ->swapBuffers();
                    device
            ->pollEvents();
                }

                WindowManager::instance().terminate();
                device
            ->closeWindow();
                device
            ->terminate();
                device
            ->deleteLater();
                
            return 0;
            }

            在開(kāi)發(fā)上參考了Qt等軟件,當(dāng)前支持常見(jiàn)控件 支持控件序列化 整體換膚 控件換膚
            上面的代碼顯示的截圖如下:
            http://images2015.cnblogs.com/blog/676118/201601/676118-20160120092402484-466039328.png
            不過(guò)當(dāng)前還有一點(diǎn)小問(wèn)題 修改完了再上代碼
            做這個(gè)不為什么 就是幾年前一直想做個(gè)
            posted on 2016-01-20 09:34 ccsdu2009 閱讀(2041) 評(píng)論(3)  編輯 收藏 引用 所屬分類: Game引擎
            Comments
            • # re: 新做的一個(gè)基于OPENGL的gui庫(kù) 起名BGE
              天下
              Posted @ 2016-01-20 18:19
              good ,最近也在寫(xiě)DirectUI,后期考慮用SDL 做跨平臺(tái)的UI。
                回復(fù)  更多評(píng)論   
            • # re: 新做的一個(gè)基于OPENGL的gui庫(kù) 起名BGE
              ccsdu2009
              Posted @ 2016-01-21 09:23
              @天下
              那還不如我們一起做
              GUI還是很費(fèi)精力的  回復(fù)  更多評(píng)論   
            • # re: 新做的一個(gè)基于OPENGL的gui庫(kù) 起名BGE
              天下
              Posted @ 2016-01-30 16:56
              @ccsdu2009
              加油,GUI確實(shí)費(fèi)力,期望還要加入腳本語(yǔ)言支持,如LUA。

                回復(fù)  更多評(píng)論   
             
            97久久精品人妻人人搡人人玩 | 99久久婷婷国产综合精品草原| 久久99精品久久久久久动态图| 久久久久亚洲Av无码专| 91麻精品国产91久久久久 | 久久亚洲国产中v天仙www | 久久99精品久久久久婷婷| 国产高潮国产高潮久久久91| 亚洲色欲久久久久综合网| 77777亚洲午夜久久多喷| 久久―日本道色综合久久| 亚洲午夜精品久久久久久app| 九九精品99久久久香蕉| 久久影院午夜理论片无码| 午夜不卡久久精品无码免费| 91精品国产91热久久久久福利 | 国内精品人妻无码久久久影院| 日本福利片国产午夜久久| 久久久久久久女国产乱让韩| 久久精品国产影库免费看| 久久精品中文字幕一区| 精品人妻伦九区久久AAA片69| 亚洲va久久久噜噜噜久久狠狠| 精品人妻伦九区久久AAA片69| 久久超乳爆乳中文字幕| 久久久久se色偷偷亚洲精品av| 青青青国产成人久久111网站| 人妻久久久一区二区三区| 日韩欧美亚洲综合久久影院Ds| AV狠狠色丁香婷婷综合久久| 2021国产精品午夜久久| 久久播电影网| 久久99精品久久久久久噜噜| 国产精品午夜久久| 久久93精品国产91久久综合| 情人伊人久久综合亚洲| 久久这里只有精品首页| 久久99久久99小草精品免视看| 精品久久久久久久无码| 色噜噜狠狠先锋影音久久| 成人久久精品一区二区三区 |