由于想实现Widget的自适应大小,看论坛里讨论貌似RTT是比较可行的方法
示例Demo是UnitTest_Layers和UnitTest_RTTLayer.
UnitTest_RTTLayer很简单,就是把控件渲染到纹理,然后贴图,可是怎么交互呢,貌似UnitTest_Layers给出了答案,但是UnitTest_Layers是基于OGRE的,苦恼。。。。没搞过OGRE啊,直接google,下载、编译基于OGRE的MyGUI,一切都很顺利。
但是运行例子的时候,设置OGRE渲染系统时,由于我屏幕分辨率是1600*900,所以我设置成了该项,一运行,屏幕出现一行“输入信号超出范围,更改为1600*900”,擦。。。我明明设置了1600*900啊。
决定设置其他分辨率,但是再一运行,设置的窗口再也不出现了。。。。尼玛,这可咋办
一想,肯定是有个配置文件之类的东东,第一次设置好后,写入配置文件,以后每次都是只读该配置文件,不再读设置窗口了。抱着这个想法,我就找与OGRE相关的文档,果不出所料,在Debug文件下找到“ogre.cfg",打开,乐开花了,果然在这里。好了我在里面设置了其他分辨率,居然还是不行。
不经意间,看到FullScreen=Yes,想着改为No试试,好吧,走狗屎运,行了!应该有其他方法的,只是自己对OGRE不知道罢了。开始MyguiRTT研究吧!