• <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>

            麒麟子

            ~~

            導航

            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            統計

            常用鏈接

            留言簿(12)

            隨筆分類

            隨筆檔案

            Friends

            WebSites

            積分與排名

            最新隨筆

            最新評論

            閱讀排行榜

            評論排行榜

            #

            下載列表

            以后所有可以下載的東西都會加入此貼.這是一篇持續更新的貼子.

            2010.01.14    2D Skinned Mesh  
                     簡介:一個2D的蒙皮骨骼例子,可以看清骨骼運算的本質 詳細請進
            2010.09.02 CCGE     1.0.1
              簡介:開開心心收場.應該是最后版本了.本人對控制臺已無憾言.詳細請進
            2010.08.30 CCGE 1.0.0
              簡介:在原來CCGL的基礎上,修改了底層繪制方案,使效率提升了許多倍.并整合了兩個游戲DEMO.修改了其更新算法,使它們的繪制獨立于CPU運算速度,不會出現更新過快過慢的現象(如果連基本幀率都達不到的CPU,另當別論)...
            下載頁面

            2010.08 俄羅斯方塊 0.0.1
              簡介:利用控制臺字符屬性產生圖形效果,寫出的俄羅斯方塊.下載頁面
            2010.07 貪食蛇 0.0.1
              簡介:利用控制臺字符屬性產生圖形效果,寫出的貪食蛇.下載頁面
            2010.06    3d模型導入
              簡介:畢業設計時做的一個3D模型導入程序.很寒酸.用的是OPENGL來加載MD2模型下載頁面
            2009.04 3d貪食蛇-小游戲
              簡介:這是一款基于DX9的小游戲,學完DX9做了兩個.這是其中一個.下載頁面  
            2008.10 墻中公主-小游戲
              簡介:這是一款基于DX9的小游戲,學完DX9做了兩個.這是其中一個.下載頁面

            posted @ 2010-08-28 09:22 麒麟子 閱讀(394) | 評論 (0)編輯 收藏

            用控制臺寫圖形程序--俄羅斯方塊

            更新內容.又再一次地修改了CCGL,使它可以支持變寬字符. 這樣輸出就美觀了.
            進一步完善了游戲,加入了開場場景等邏輯相關的東西. 

            BUG:消除方塊時的算法一直沒修正. 計分系統沒有做.

            最新下載地址:Tetris 0.0.1.rar

            下面是截圖,算不上精彩.但在控制臺下也不見得有多遜色.






            ----------------------------------------------------------------------------------------------------------------------------------
            麻雀雖小,五臟具全.
            此次正式將我寫的控制臺圖形命名為CCGL(cukcoo console graphic layer).弄個名字,精神也自然來了.純屬自娛自樂.

            關于CCGL的功能如下:
            1,支持圖文混排(英文字符和中文字符同寬,即都占兩格).
            2,支持雙緩沖.
            3,能夠指定緩沖區大小.
            4,能夠定位像素位置.

            注:所有的X,Y都做了轉換.使用時,采用與GDI相同的坐標系.即左上角為(0,0)

            關于這個俄羅斯方塊.
            在網上有很多關于俄羅斯方塊的代碼,有的是一兩個類堆積而成,有的則是一個個函數拼接.當然,還有更厲害的就是一個main函數搞定一切的大仙們的作品. 

            此次寫俄羅斯方塊,花了兩三天晚上的時間. 并且還有BUG,也是不完整的產品. 時間花在了哪里呢.那就得看看這俄羅斯方塊有什么.

            俄羅斯方塊能有什么,就是一堆方塊而已.但是,俄羅斯方塊的代碼呢. 卻要看你是怎么寫了.

            突發其想,將俄羅斯方塊按普通的MMO游戲來寫.即對其各模塊進行分類.
            圖形(CCGL)
            場景(與圖形繪制相關的部分,唯一)
            對象(將場景對象與邏輯對象合并了.多實例)
            邏輯場景(多實例,與邏輯相關的部分,邏輯狀態決定了采用哪個場景,對應的場景決定了如何處理消息.)
            邏輯(這是處理場景轉換,整合多個模塊功能的地方,唯一)

            Launcher (加載器,加載游戲并執行.在進入游戲前可以選擇一些初始配置)
            Main    這就是主函數了.其實它最簡單了.
            GLaucncher.Init();
            GLaucncher.Run();
            GLaucncher.Exit();


            上張圖看看效果.
            完成度未知,但可以試玩.



            希望能給游戲開發愛好者們一些思路和幫助.
            源碼和可執行程序請點這里



            順便說一下,我是一個喜歡造輪子的人. 當然,我會選擇一些比較有意思的輪子.而不是盲目濫造. 我知道,將東西發到CPP首頁,就有可能受到批判.批判我會接受,但請注意文明.

            posted @ 2010-08-26 02:16 麒麟子 閱讀(3598) | 評論 (10)編輯 收藏

            用控制臺寫圖形程序--貪食蛇

            新版源碼下載地址. 點擊這里 (SnakeGame 0.0.1 ) 鏈接已修正,請放心使用.
            --------------------------------------------------------------------------------------------------------------------------------
            先前的版本會閃屏,于是新建了一個緩沖來解決,并將對控制臺的"圖形"操作抽象了出來,使我們使用的時候就像在使用普通的圖形設備一樣

                    1 設置清屏色
                    2 指定像素位置,設置要繪制的內容
                    3 提交緩沖區內容.

            新版源碼已完成了游戲的基本功能
               輸入控制
               食物檢測
               障礙檢測
            另外,還收錄了部分用于方便設置控制臺屬性的函數.如窗口圖標,窗口句柄等.
            -------------------------------------------
            Windows下的控制臺是可以設置前景,背景色的。這給了我一個很不錯的想法,用他寫圖形。

            說好就開工,用了一個小時寫了一個貪食蛇。

            完成功能:
            有一個簡單的繪制框架。
            一個簡單的UI。
            除了食物沒有處理外,其余都OK。

            能自動更新,檢測碰撞等。。。
            二話不說,有圖有真相。

            蛋疼的朋友可以試試,挺爽的。。。。

            PicturePicture Picture

            下載地址:源碼加執行程序

            posted @ 2010-08-20 01:02 麒麟子 閱讀(4230) | 評論 (7)編輯 收藏

            代顏色的提示信息輸出。

            前幾天在網上搜到一段改變控制臺字符顏色的代碼,用它做了一個代字體顏色的Log輸出。感覺還是比較不錯的。

              /*
              0 黑色 1 深藍 2綠 3淺藍
              4暗紅 5暗紫 6嫩黃 7淺白
              8淺灰 9亮藍 10亮綠 11非常藍
              12大紅 13亮紫 14黃 15白 
              */

            這是那段代碼。我已做成了ANSI和UNICODE都支持的版本,具體為什么要這樣,可以看前一篇關于字符編碼與IO的問題。
                void __Printfc(U16 color, const TCHAR* format,
                

                    va_list argList; 
                    U16 oldcolor; 
                    HANDLE hCon
            =GetStdHandle(STD_OUTPUT_HANDLE); 
                    CONSOLE_SCREEN_BUFFER_INFO bInfo; 
                    GetConsoleScreenBufferInfo(hCon, 
            &bInfo ); 

                    oldcolor 
            = bInfo.wAttributes;
                    
            if(oldcolor!=color)
                        SetConsoleTextAttribute(hCon,color); 

            #ifdef _UNICODE
                    _tsetlocale(LC_CTYPE,TEXT(
            ""));
            #endif

                    va_start( argList, format ); 
                    _tprintf( format,argList); 
                    va_end( argList );

            #ifdef _UNICODE
                    _tsetlocale(LC_CTYPE,TEXT(
            "C"));
            #endif
                    
            if(oldcolor!=color)
                        SetConsoleTextAttribute(hCon,color);  
                }
             

            posted @ 2010-08-20 01:00 麒麟子 閱讀(313) | 評論 (0)編輯 收藏

            字符輸出與編碼集的問題。

            今天早上起來就興致脖脖地開始編寫引擎的Log輸出工具。 一個小時后,基本上完功。 經測試時才發現,原來_tprintf在Unicode下不能輸出中文。求解未果,只好去上班了。
              晚上回來繼續完善早上的工作,將Log輸出做成了可以重定向的層次結構,并放入了一個可以共享的Share動態庫中。這樣就可以保持Log輸出系統的唯一和共享(靜態Lib中共無法共享).
                  用百度搜了一下這個輸出問題,突然發現了其中奧妙,原來Unicode需要本地化信息。
              經測試發現了如下規律
            /*
                  C多  CU   非C多  非CU
            stdio    1   0    1     1
            iostream  1   1    0     0


            可以得出
            1、在多字節時,默認(C)風格下,二者都能輸出中文。
            2、在多字節時,非C風格下,cout不能輸出中文
            3、在U時,默認C風格下,print不能輸出中文
            4、在U時,非C風格下,cout不能輸出中文


            由此可知,要在C風格下,iostream才能輸出中文。
            而printf只有在C風格的Unicode下才不能輸出中文,其它均可。

            */

            測試代碼如下
            #include <iostream>
            #include <tchar.h>
            #include <locale>
            int _tmain(int argc, _TCHAR* argv[])
            {
            #ifdef _UNICODE
             _tsetlocale(LC_CTYPE,TEXT(""));
            #endif
             _tprintf(TEXT("a在哪里啊\n"));
            #ifdef _UNICODE
             _tsetlocale(LC_CTYPE,TEXT("C"));
            #endif


            #ifdef _UNICODE
             std::wcout<<"d在哪里啊"<<std::endl;
            #else
             std::cout<<"d在哪里啊"<<std::endl;
            #endif
             getchar();
             return 0;
            }

            posted @ 2010-08-19 01:19 麒麟子 閱讀(368) | 評論 (0)編輯 收藏

            僅列出標題
            共38頁: First 11 12 13 14 15 16 17 18 19 Last 
            99久久成人国产精品免费| 国产成人精品白浆久久69| 久久精品亚洲福利| 久久久久无码精品国产| 久久精品国产一区二区三区| 久久免费国产精品| 激情久久久久久久久久| 久久精品国产亚洲AV无码麻豆 | 久久SE精品一区二区| 99久久国产免费福利| 久久成人影院精品777| 久久久噜噜噜www成人网| 亚洲国产精品婷婷久久| 日韩久久无码免费毛片软件| 久久av高潮av无码av喷吹| 亚洲精品乱码久久久久久蜜桃不卡 | 精品欧美一区二区三区久久久| 久久久久久久免费视频| 无码精品久久一区二区三区| 久久国产欧美日韩精品| 久久久www免费人成精品| 久久精品夜色噜噜亚洲A∨| 久久男人Av资源网站无码软件 | 久久免费视频观看| 秋霞久久国产精品电影院| 亚洲AV日韩精品久久久久| 伊人久久大香线蕉无码麻豆| 久久青青色综合| 亚洲国产一成久久精品国产成人综合| 久久夜色tv网站| 久久精品国产亚洲麻豆| 久久久91精品国产一区二区三区| 奇米综合四色77777久久| 久久99国产精品久久| 国产精品久久久久9999高清| 精品久久久久久无码中文字幕一区| 人妻少妇久久中文字幕一区二区| 久久受www免费人成_看片中文| 色妞色综合久久夜夜| 国产精品久久久久久久久鸭| 久久精品无码专区免费青青 |