看了好久好逮能让N3画出东西来了, 感觉它的架构就是专门为DX而设计的^_^. 虽说也能编写GL的中间层(因为N3的API是处于继承树的中间, 而不是最底下), 但是很多习惯一看就是DX嘛. 可能用惯API的会比较好上手点.
命令行程序都是从ConsoleApplication派生, 那么图形程序就是从RenderApplication派生了^_^.
先看看RenderApplication都有哪些成员:
Ptr<Core::CoreServer> coreServer; | 前面的命令行程序已经用过了, 最基本的核心服务 |
Ptr<IO::IoServer> ioServer; | 输入/输出服务, 别忘了把程序所需的资源(如shader)拷贝到正确的目录, 默认是exe文件所在的目录 |
Ptr<Interface::IOInterface> ioInterface; | 进行资源异步(多线程)加载的接口(N3 NB就NB在多线程上) |
Ptr<CoreGraphics::RenderDevice> renderDevice; | 核心的图形系统, 可以看做是IDirect3DDevice9的封装^_^, 函数差不多 |
Ptr<CoreGraphics::DisplayDevice> displayDevice; | 显示设备, 就是在哪画. 封装了窗口的创建和消息处理, 还有显示适配器等 |
Ptr<CoreGraphics::TransformDevice> transformDevice; | 管理全局的矩阵变换与它们的组合 |
Ptr<CoreGraphics::Sh |