摘要: Ogre源碼剖析3–可擴展性&插件機制
Ogre是一個跨操作系統平臺的開源3D引擎,既支持DirectX,也支持使用OpenGL,支持可替換的場景管理算法(BSP, OCT)。為Ogre提供這些靈活可擴展性的基礎之一就是其面向插件的設計。
很多常用的軟件大都提供了插件接口,用以擴展應用程序設計者最初未想到的功能,比較常見的譬如PhotoShop的濾鏡,After Effect中的各種插件(最有名的比如shine),3dMax的插件譬如渲染器,魔獸世界的輔助插件等等。
通常,插件本身通常也需要實現主應用程序所需要的必要接口,從而使得插件可以被應用程序加載執行。此外,插件的實現也需要由主應用程序提供一些接口api,通過這些接口,插件可以對主應用程序的功能進行調用。
插件可以是動態鏈接庫(win32平臺上為DLL文件),也可以是以腳本的形式提供的,比如魔獸世界中的插件就是使用lua編寫的,插件也可能是某種應用程序自定義的文件,只要該應用程序提供了創建該類文件的方法并實現解析、執
閱讀全文