• <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>
            posts - 94, comments - 250, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            Nebula3學習筆記(1): 序

            Posted on 2008-12-14 21:03 Condor 閱讀(2236) 評論(1)  編輯 收藏 引用

            前言

            目前這個引擎只是一個預覽版, 很多功能仍在開發(fā)當中

            硬件需求: 顯卡支持ShaderModel3.0

            作者Blog: http://flohofwoe.blogspot.com

            用到的開源工程

            為了避免版本之間的不兼容, 已經(jīng)在SDK中包含

            體系結構一覽

            • Nebula3 分成三層, 每一層都是建立在另一層之上的:
              • 基礎層: 最底層, 提供了一個圖形和音頻之下基本的平臺抽象. 基礎層可以用作任意類型的程序開發(fā)平臺, 而不僅僅是實時3D程序.
              • 渲染層: 這是中間層, 它在基礎層之上另加了許多特性, 像3D渲染, 音頻, 物理和場景管理等.
              • 應用程序?qū)? 這是最高的一層, 提供了一個完整的游戲框架, 這使得開發(fā)人員可以集中精力在游戲邏輯上, 而不用對關心各種細節(jié)實現(xiàn).
            • Nebula3 會跟Mangalore 合為一個整體, Mangalore的各種子系統(tǒng)會集成到Nebula3的適合它們的層中去.
            • Nebula3 比 Nebula2更趨向于使用C++.
            • Nebula3通過引用計數(shù)和智能指針實現(xiàn)了對象生命周期的管理.
            • Nebula3的新對象模型使用一個4 byte的基類來代替Nebula2中70+ bytes的.
            • RTTI更高效, 更易用.
            • Nebula3仍然不使用C++異常, RTTI和STL(所有這些不是降低性能就是降低便攜性).
            • 根據(jù)類名來創(chuàng)建對象更快更易用.
            • Nebula3 避免使用C Lib, 去除了附加的代碼層.
            • Nebula3 使用LUA 代替TCL作為標準的腳本語言(當然也可以增加其它腳本語言的支持)

            基礎層

            • App 包含各種Application類
            • Attr 屬性注冊
            • Core                Nebula3的對象模型
            • Debug 程序內(nèi)存轉儲和基于HTTP的調(diào)試信息(這個真是個好東西, 第一次聽說)
            • Http 實現(xiàn)了HTTP服務器和客戶端, 這樣可以在瀏覽器中實時查看調(diào)試信息
            • IO 輸入輸出系統(tǒng), 很方便
            • Math 基于C++的數(shù)學庫, 沒什么特別的
            • Memory 實現(xiàn)了定制的內(nèi)存分配器
            • Messaging 消息定義
            • Net 最基本的基于TCP協(xié)議的C/S架構, 更多的功能會在高層的網(wǎng)絡擴展中給出
            • Scripting 腳本系統(tǒng)
            • System 硬件平臺和特定操作系統(tǒng)相關的一些特性
            • Threading 多線程
            • Timing 時間/定時器管理
            • Util 工具庫, 包括各種容器, 數(shù)據(jù)結構, 還有一個強大的string類(拋棄STL吧!)

            渲染層

            • CoreGraphics 圖形庫核心類
            • Frame 基于幀的處理, 如RenderTarget, PostProcess等
            • Graphics 一些實體類型定義, 如Camera之類
            • Input 輸入設備, 就是鼠標鍵盤手柄…..
            • Lighting 光照處理, 包括陰影算法(竟然要SM3.0@_@)
            • Models 骨骼模型&粒子系統(tǒng)
            • RenderUtil 目前就只有一個Maya的攝像機…..
            • Resources 資源管理器

            應用程序?qū)?/strong>

            application_win32工程就是一個簡單的游戲, 框架, 但是已經(jīng)包含了許多特性, 如果物理, 數(shù)據(jù)庫等. 不過好像還缺少GUI系統(tǒng).

            插件

            目前有三個, 基于ODE的物理引擎, 基于SQLite的本地數(shù)據(jù)庫, 基于nebula2模型的骨骼模型系統(tǒng)

            編譯

            沒什么好說的, 打開.sln直接編譯就成了, 沒見過這么簡單的開源工程^_^

             

            就以這個程序做為測試程序的模板吧

             1: #include "stdneb.h"
             2: #include "core/debug.h"
             3: #include "core/coreserver.h"
             4: #include "core/sysfunc.h"
             5: 
             6: using namespace Core;
             7: 
             8: void
             9: __cdecl main()
            10: {
            11: 	Ptr<CoreServer> coreServer = CoreServer::Create();
            12: 	coreServer->SetAppName("Nebula3 Hello World!");
            13: 	coreServer->Open();
            14: 
            15: 	n_printf("Hello World\n");
            16: 	system("pause");
            17: 
            18: 	coreServer->Close();
            19: 	coreServer = NULL;
            20: 
            21: 	Core::SysFunc::Exit(0);
            22: }
            

            Feedback

            # re: Nebula3學習筆記(1): 序  回復  更多評論   

            2009-10-09 09:47 by G_cofa
            沒見過這么簡單的開源工程^_^
            UP!
            久久综合九色综合网站| 久久成人18免费网站| 无码任你躁久久久久久老妇App| 久久精品国产亚洲精品| 九九热久久免费视频| 一本久久a久久精品亚洲| 国产精品视频久久久| 欧美久久亚洲精品| 久久ZYZ资源站无码中文动漫| 国产激情久久久久影院小草 | 国产精品久久国产精品99盘 | 久久国产AVJUST麻豆| 久久精品一本到99热免费| 久久精品无码一区二区三区免费| 久久久久青草线蕉综合超碰| 91超碰碰碰碰久久久久久综合| 欧美亚洲国产精品久久| 国产69精品久久久久99尤物| 老色鬼久久亚洲AV综合| 久久综合鬼色88久久精品综合自在自线噜噜 | 亚洲?V乱码久久精品蜜桃 | 亚洲国产小视频精品久久久三级 | 久久一区二区三区免费| 久久久91精品国产一区二区三区| 一本色道久久HEZYO无码| 天堂无码久久综合东京热| 成人a毛片久久免费播放| 97久久精品无码一区二区天美| 久久久久久久久久久久久久| 香港aa三级久久三级老师2021国产三级精品三级在 | 久久综合九色综合97_久久久| 亚洲欧美伊人久久综合一区二区| 青青久久精品国产免费看| 久久久91人妻无码精品蜜桃HD| 国产成人久久精品二区三区| 久久美女人爽女人爽| 久久综合丁香激情久久| 国产精品综合久久第一页| 国产精品内射久久久久欢欢| 久久青青草原精品国产软件| 中文字幕亚洲综合久久2|