Quake源代碼分析(草稿).2

       

 在上一篇文章里,我談到過Quake的各個邏輯模塊被封裝在不同的DLL中,它們之間的交互利用了引出函數作為接口.這一點有點像COM,不同的是COM需要對DLL進行註冊,因為COM有時要提供給多個應用程序來使用,應用程序通過註冊表裡的GUID定位DLL,然後再載入到程序的進程空間中.但是Quake的DLL就不同了,它不必讓所有的應用程序都知道它的存在,它是專屬於引擎的,離開了引擎它一無事處.另外一個COM與Quake DLL的不同點是,COM的主力編程語言是C++,一種面向對象語言,它產生的接口都是以類出現的,所以使用它的語言也必須是面向對象的.但Quake是純C寫的,沒有類的概念,因此它提供的接口是純函數的形式給出.
        DLL模式被大量的運用到遊戲設計上,選擇它作為遊戲的建構方法不是沒有它的道理的.

阅读更多
文章标签: dll 引擎 c++ c
个人分类: 游戏开发
上一篇Quake源代碼分析(草稿).1
下一篇Quake源代碼分析(草稿).3
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭