查看: 2592|回复: 3

如何让osg文字不随着相机大小而改变大小

[复制链接]

该用户从未签到

发表于 2012-2-14 20:46:42 | 显示全部楼层 |阅读模式
osg文字显示于一个camera中,当camera大小改变时,文字该如何设置保持大小不变呢?求帮助

该用户从未签到

发表于 2012-2-15 09:24:27 | 显示全部楼层
我以前在博客园看到indf有提到,这是链接http://www.cnblogs.com/indif/archive/2011/04/22/2024805.html
主要是:
14、怎样布局屏幕元素(文字、图片等)
答:屏幕元素一般使用HUD的方式(即正交投影)渲染,在osg中可以定义一个正交投影的相机,把屏幕元素作为子节点添加给这个HUD相机进行渲染。元素的布局和缩放,一般有两种处理方式:
一、 按视口实际大小布局,同时跟踪输出窗口的大小变化,并按窗口实际大小更新HUD相机的投影矩阵和视口。这种方式不但要动态更新相机的投影矩阵和视口,而且要自己编写代码根据视口大小变化动态更新屏幕元素的位置和大小,如按指定的对齐方式更新位置、按指定的尺寸比例更新大小。也可以只更新位置不更新大小,这样得到的效果就是屏幕元素的大小不随窗口缩放。
二、 按指定的固定大小布局,同时设置HUD相机的投影矩阵为以相同宽高计算的固定值,跟踪输出窗口大小变化,按窗口实际大小更新HUD相机的视口。这种方式只需要编写代码更新相机的视口即可,而屏幕元素的大小和位置始终按初始的固定视口大小计算,不需随窗口变化做调整。这样得到的效果就是屏幕元素的大小和布局与窗口等比缩放。

  具体的您在看看,尝试实验下。

该用户从未签到

 楼主| 发表于 2012-2-15 23:43:48 | 显示全部楼层
精辟,非常感谢!

该用户从未签到

发表于 2012-2-16 14:44:33 | 显示全部楼层
不错,有点茅塞顿开
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表