-
Notifications
You must be signed in to change notification settings - Fork 0
zjhlogo/originengine
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Origin Engine I, what is Origin Engine ? an open source, cross-platform and multily renderer 3D MMORPG game engine II, feature 1, 多渲染接口 DirectX/OpenGL 2, 跨平台 Window/Linux 3, 国际化, UNICODE/ANSI whatever III, 初步引擎的主体框架, 分为 3 大模块: 1, OriginEngine 引擎核心 用于控制并协调其他模块协同工作 2, RenderD3D/RenderOpenGL 引擎的渲染模块 专门负责特定的渲染模块, 以组件的形式供用户选择, 支持 DirectX/OpenGL 3, OEApp 用户程序接口 用户程序与引擎的接入点 IV, 目录结构 bin // 程序运行初始目录 build // 编译产生的临时文件 demo // demo 演示程序 demo_test // 测试程序 include // 引擎SDK文件头 lib // 引擎SDK库文件 source libOE // Origin Engine 基本库, 所有应用程序必须静态链接该库 OriginEngine // 核心模块 RendererD3D // DirectX 渲染模块 RendererOpenGL // OpenGL 渲染模块 V, 如何编译,运行,调试 目前只针对Windows平台, source.sln 用于编译引擎, demo.sln 用于编译demo; 以 demo_test 为列 调试程序时设置 Debug: Command = trunk目录\bin\demo_test_D.exe Working Directory = trunk目录\bin\ Release: Command = trunk目录\bin\demo_test.exe Working Directory = trunk目录\bin\ Unicode Debug: Command = trunk目录\bin\demo_test_UD.exe Working Directory = trunk目录\bin\ Unicode Release: Command = trunk目录\bin\demo_testU.exe Working Directory = trunk目录\bin\ VI, how it is running ? 用户应用程序在 main 函数 new OEApp 并执行 IOEApp->Run() 函数, Run 函数将加载并初始化 OriginEngine 核心, 再由核心模块加载并初始化其他模块 (目前只有渲染模块), 在初始化模块的过程中传入的参数 OEHolder, 用于同步各个 模块间的接口指针, 待初始化完成后, 就会进入 IOEDevice->StartPerform, 以Window 平台为例: StartPerform 函数创 建 Windows 并初始化 D3D, 然后进入消息循环, 在循环期间每帧调用 IOEApp->Update, IOEApp->Render 进行更新与渲染 直到应用程序结束 VII, 编码规范 1, char 类型别用, 取而代之 用 tchar 2, std::string, std::wstring 类型别用, 取而代之 用 tstring 3, 基本类型 unsigned char -> uchar unsigned short -> ushort unsigned int -> uint (void*)0 -> NULL 4, 所有接口类用 I[OE]XXX.h 写法, 所有接口的实现类用 C[OE]XXX_Impl.h C[OE]XXX_Impl.cpp 的写法 5, 模块命名后缀 (1), 后缀 _D ANSI 调试版本 (2), 后缀 _UD UNICODE 调试版本 (3), 后缀 U UNICODE 发行版本 (4), 无后缀 ANSI 发行版本 例: OriginEngine_UD.dll 为 UNICODE 调试版本, OriginEngine.dll 为 ANSI 发行版本 ------------------------------------------------------------------------------------------- 以上所有文字为本人设计框架的总结与建议, 希望大家共同修订以形成规范 (zjhlogo 2009年5月24日)
About
Automatically exported from code.google.com/p/originengine
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published