Ogre源码分析与学习笔记-1

既然是3D引擎, 最感兴趣的当然是他的渲染机制了, 所以, 就从他的RenderSystem入手!

 用VC2005 打开Ogre.dsw, 然后导出为05工程, 就可以在VC中看到所有工程了.
RenderSystem头文件位于Ogre -> OgreMain -> Header Files中

RenderSystem是一个纯虚的基类, 抽象出了与3D SDKs 无关的接口操作, 包括两大部分: 渲染环境/渲染窗口的创建与管理, 3D模型的渲染.
我重点关心的是渲染机制, 也就是模型的渲染.

 

由于这个类只有基类, 而且每个函数都有详细注释, 所以就不说函数的用法了

 

几点心得:
1. 可以注册一个FrameListener 到 RenderSystem, 可以在绘制每一帧时得到通知, 这是一个典型的观察者模式, FrameListener 有两个回调:

        virtual bool frameStarted(const FrameEvent& evt) { return true; }
        virtual bool frameEnded(const FrameEvent& evt) { return true; }

 

2. Textrue的生成要通过RenderSystem来, 这又是个典型的类工厂模式, 至于Texture的详情, 下次再说.

		/** Creates and registers a render texture object.
			@param name 
				The name for the new render texture. Note that names must be unique.
			@param width
				The requested width for the render texture. S
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值