cegui图片文字写屏
来源:互联网 发布:西安交大图书馆网络 编辑:程序博客网 时间:2024/04/29 01:58
在cegui中, 文字和图片的表现方式一般是以窗口的形式呈现的. 这本主要针对0.7.0以上版本的CEGUI实现文字或图片直接写屏(指的是不用画在窗口上).
这个技术在cegui dome上已经有过展现, 看到每个dome左下方那个会旋转的GUI纹理了吗, 它就是利用GeometryBuffer类进行纹理直接写屏的. 下面就来讲一下如何实现这个效果吧.
1.创建GeometryBuffer的一个对象, 相关代码:
CEGUI::OgreRenderer* pOgrerender;
GeometryBuffer* pGeometryEffect = pOgrerender->createGeometryBuffer();
pOgrerender需要在渲染系统初始化时指向实例对象.
2.设置显示的区间
实例代码: pGeometryEffect->setClippingRegion(CEGUI::Rect(0, 0, 100, 100));
3.设置渲染函数
pOgrerender->getDefaultRenderingRoot().subscribeEvent(CEGUI::RenderingSurface::EventRenderQueueStarted,
CEGUI::Event::Subscriber(&GeometryEffect::overlayHandler, this));
这一句必须在GeometryEffect(自己定义的类)的某个成员函数里写, 并且在GeometryEffect::overlayHandler必须调用pGeometryEffect->draw();才能显示相应的东西. 具体原因有待研究
4.渲染对象
调用CEGUI::Image::draw(), CEGUI::Font::drawText()第一参数里要填写pGeometryEffect,其它参数就不作多的解释了
这个draw不需要在游戏每帧更新时都draw一次, 只要调用一回就可以显示你要的东西了。如果要draw新的东西,最好调用GeometryBuffer::reset()一下.
5.旋转
如果想旋转绘制的东西首先要设置旋转的中心轴:调用pGeometryEffect->setPivot(Vector3((x, y,z));就好了
接着调用pGeometryEffect->setRotation(Vector3(x, y, z));就可以完成旋转的功能了
转载或修改请说明出处
作者:howlet
E-Mial: howlet3@126.com
3d游戏技术交流群:108546670
- cegui图片文字写屏
- 图片上写文字
- 向图片上写文字
- java 图片上写文字
- 在图片上动态的写文字
- ImageMagick--往图片上写文字
- Delphi图片上写水印文字函数
- opencv putText图片中写文字
- 如何在图片上写文字
- ImageMagic 向图片上写文字
- imagemagick向图片中写文字
- Android把文字写到图片上生成图片+文字的新图片
- 直接写屏显示文字
- 为什么在上传的图片上写文字不清晰??
- 自己写的GDI+ 图片文字按钮 ButtonIT
- 关于android在图片上写文字的问题
- 将图片和文字写到pdf文件中
- 多次写文字到图片上的水印效果
- copy a reusable transformation as non-reusable transformation
- 忘了root密码怎么办(Fedora 为例)
- JFreeChart :快速散点图演示
- hdu 2027 统计元音
- 经验分享
- cegui图片文字写屏
- JSP页面中JS,图片等相对路径引用问题
- Java从入门到精通 - 反射Constructor构造函数的使用
- 引用kernel32.dll实现简体字和繁体字转换
- Rhel 4 下单独装pdo_mysql
- 可以利用的资源
- sqlite教程网址
- dnn(dotnetnuke)下如果实现二级域名的单点登录
- ERP业务流程优化设计之思想和原则