• <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++高級工程師 Android高級軟件工程師 IT集成工程師 音頻工程師 熟悉c,c++,java,c#,py,js,asp等多種語言 程序猿
            本著簡單,易用的設計原則
            我給蓋莫引擎加入了一個簡單的插件系統
            插件基類如下:
            class Plugin : public virtual RefCount 
            {
            public:
                
            virtual ~Plugin(){}
                
            virtual PLUGIN_FORMAT GetFormat()const  = 0;
                
            virtual engine_string GetMaker()const = 0;
                
            virtual engine_string GetDescription()const = 0;
                
            virtual void  GetVersion(int &main,int &sub,int &pitch) = 0;
            private:    
                
            virtual bool Init(void* data) = 0;
                
            virtual void Deinit(void* data) = 0;
                friend 
            class PluginFactory;
            };

            可以看出基本的插件方法有獲取插件格式,插件作者,插件描述,插件版本等
            下面的是簡單的插件工廠
            ////////////////////////////////////////////////////////////
            /// 定義引擎插件工廠(管理器)
            ////////////////////////////////////////////////////////////
            class GAPI PluginFactory : public Singleton<PluginFactory>
            {
            public:
                
            bool RegisterPlugin(Plugin* plugin);
                
            void UnRegisterPlugin(Plugin* plugin);
            };
            這是一個簡單的單件
            它只有2個函數注冊和反注冊插件
            使用的時候只要獲取插件指針
            然后傳入插件工廠注冊之后即可使用
            (注冊的本質就是根據插件類型設置必要的插件上下文數據)

            這種插件方法有它的弊端 不過在我看來最大的好處就是簡單咯

            下面是簡單的視頻播放插件咯
            ////////////////////////////////////////////////////////////
            /// 定義引擎視頻播放器(全局唯一)
            ////////////////////////////////////////////////////////////
            class VideoPlayer : public Plugin
            {
            public
                
            ///////////////////////////////////////////////////////
                
            /// 構造,析構視頻播放器
                
            ///////////////////////////////////////////////////////
                VideoPlayer(){}
                
            virtual ~VideoPlayer(){}
                   
            ///////////////////////////////////////////////////////
                
            /// 播放指定視頻
                
            ///////////////////////////////////////////////////////
                virtual bool Play(const engine_string& video) = 0
                
                
            ///////////////////////////////////////////////////////
                
            /// 視頻更新每幀調用 
                
            ///////////////////////////////////////////////////////    
                virtual bool Update() = 0
                
                
            ///////////////////////////////////////////////////////
                
            /// 停止并卸載視頻
                
            ///////////////////////////////////////////////////////
                virtual void Stop() = 0
                
                
            ///////////////////////////////////////////////////////
                
            /// 獲取,設置視頻當前音量(0-1)
                
            ///////////////////////////////////////////////////////    
                virtual float GetVolume()const = 0
                
            virtual void  SetVolume(float volume) = 0;
            };

            posted on 2010-06-23 14:10 ccsdu2009 閱讀(1563) 評論(0)  編輯 收藏 引用 所屬分類: Game引擎
             
            99久久人妻无码精品系列| 久久久久国产精品嫩草影院| 久久人人爽人人爽人人片av高请| 精品久久久久成人码免费动漫| 久久久无码精品亚洲日韩按摩| 成人午夜精品久久久久久久小说| 色偷偷88欧美精品久久久| 亚洲国产一成人久久精品| 精品久久综合1区2区3区激情 | 久久国产精品成人影院| 一级做a爰片久久毛片16| 久久综合伊人77777| 久久精品中文闷骚内射| 一本久道久久综合狠狠躁AV| 2022年国产精品久久久久| 国产精品久久久久a影院| 亚洲精品高清久久| 久久这里只有精品18| 久久99精品久久久久久野外| 久久精品国产精品亚洲毛片| 天天影视色香欲综合久久| 情人伊人久久综合亚洲| 99精品国产综合久久久久五月天| 久久久久国产一级毛片高清板| 久久久久亚洲精品天堂| 久久久www免费人成精品| 久久国产精品一区| 久久免费精品视频| 国产精品久久一区二区三区| 久久久久高潮综合影院| 亚洲午夜无码AV毛片久久| 久久无码一区二区三区少妇| 亚洲精品高清国产一久久| 久久99国产综合精品| aaa级精品久久久国产片| 久久99国产亚洲高清观看首页| 久久精品亚洲一区二区三区浴池 | 欧美午夜A∨大片久久| 久久久WWW成人免费精品| 国产精品内射久久久久欢欢| 国产精品女同一区二区久久|