摘要: 簡(jiǎn)介
我拿到了一個(gè)任務(wù),就是寫一篇關(guān)于游戲引擎設(shè)計(jì)的報(bào)告。為此,我開始用C++來(lái)實(shí)現(xiàn)一個(gè)框架,它包含了一些設(shè)計(jì)模式(Design Patterns)的基本實(shí)現(xiàn)以及類似于基于原則設(shè)計(jì)(Policy based design)的一些C++概念。而本文就是談?wù)撐业脑O(shè)計(jì),并且里面也包括一些可編譯的代碼片斷。
背景
在本文描述的框架中使用了一些著名的設(shè)計(jì)范式(design paradigms),如:基于原則的設(shè)計(jì)(Policy based design),裝飾者(Decorator)和策略(Strategy)模式,以及相應(yīng)的C++的代碼實(shí)現(xiàn)。
代碼的功能說(shuō)明
基于原則的設(shè)計(jì)是用于游戲的設(shè)置
在進(jìn)入到足球游戲引擎設(shè)計(jì)的細(xì)節(jié)之前,先討論一下游戲中的設(shè)置。在任何游戲中都允許用戶在游戲開始期間來(lái)選擇游戲的難度。我假設(shè)這里有三種難度級(jí)別,即:低級(jí),中級(jí),高級(jí)。因?yàn)檫@些級(jí)別允許在開始的時(shí)候被選擇,這就給了我們一個(gè)機(jī)會(huì)可以利用模板類來(lái)使用基于原則的設(shè)計(jì)(基于Andrei Alexandrescu的書《Modern C++ Design》)。
閱讀全文