Menu

tyo Engine Revolution 开发日志1

好吧,今天开始在博客记录全新引擎tyo Engine Revolution 的整个开发过程吧,以方便以后自己能知道开发的一个思路。

建立好了工程,采用vs 2010进行开发,并且目前暂时做windows 版本下的开发。

首先是库的开发,创建了一个sample 工程,一个system dll,一个assistant dll.

sample工程是方便与开发中进行调试 测试的,这里就不做详细介绍了。

首先,完成了assistant中的几个API,分别支持了xml读取,lib和dll的隐式载入。

然后接着完成了system中的初始化,实例化,然后就可以创建一个窗口,当然,只是一个窗口。

大致的代码是



tyoEngineRevolution::System::tyoER_System* gptyoEngineRevolution = _tyoER_null;

class MyWorking : public tyoEngineRevolution::System::tyoERWorking
{
  virtual tyoEngineRevolution::_tyoER_ubool Update(tyoEngineRevolution::_tyoER_int _dt)
  {
    return _tyoER_false;
  }

  virtual tyoEngineRevolution::_tyoER_ubool Render()
  {
    return _tyoER_false;
  }
};

tyoEngineRevolutionMain()
{
  _tyoER_BuildEngineSystem(gptyoEngineRevolution);

  if(gptyoEngineRevolution != _tyoER_null)
  {

    gptyoEngineRevolution->Initiate("config.xml");

    MyWorking* _myWorking = _tyoER_new MyWorking();

    gptyoEngineRevolution->Begin(_myWorking);

    gptyoEngineRevolution->End();

    _tyoER_SafeDelete(_myWorking);

    gptyoEngineRevolution->Free();
  }
  

}  

然后我的配置文档中支持了动态配置吧

[codes=xml]


  
    TestWindow
    true
    1.ico
    false
    true
    true
    false
    false
    960
    640
    32
    false
    60
    false    0
    false
    false
  


以上分别是窗口名字,是否开启LOG,图标的样式,是否全屏,是否开启zbuff,线性化材质,焦点保护(非焦点模式降低消耗),鼠标是否隐藏等等。。

然后测试了一下,窗口显示出来了,记录下LOG。

Log内容:
tyo Engine Revolution Log File .
Engine Version : 1.1
Engine Makin By Garfield Chen , QQ 274354
E-Mail : Garfield.Chen@qq.com
website : www.tyoHouse.com
– – – – – – – – – – –
[System] Load xml Config Over .
[System] Start to create base system .
[System] Running the application Date: 20.07.2012, 11:32:39 ..
[System] Title Name : TestWindow
[System] OS: Windows 6.1.7601 ..
[System] Memory: 4194303K total, 4194303K free ..
[System] Create Window now .
[System] Create Window ok .
[System] Create to INPUT SYSTEM now .
[System Error] Create INPUT SYSTEM faild .
[System] Drestroy Window .
[System] Unregister Window Class .
[System] Engine Working change to null.
[System] Free System .
[System] Free SystemConfig .

接下来就是输入系统的构造吧。嗯嗯,一步一步来,这次的渲染器将支持采用DX11进行,采用延迟渲染方式进行渲染。

估计这是一个漫长的过程,不知道什么时候才能搞定这款引擎呢?

Categories:   Garfield's Diary

Comments