OpenGL问题,初到贵宝地请大家支持!
最近遇到一个OpenGL问题描述如下:
我有2个基于OpenGL的图形引擎A和B,出于一些原因希望A与B协同运作。希望A、B分别运作(双缓存),但都对同一个Buffer写东西,当某一个引擎,比如B在swapbuffer时,能够将此前A与B写入Buffer的信息显示出来。
目前:
有时会显示不同步。具体说,B在要求刷新时,会要求A也准备好信息(不论A此时是否需要)写入Buffer,而后刷新。A单方面要求刷新时也是一样,会要求B将信息写入Buffer,而后swapbuffer。
但现在,B要刷,A跟着刷,OK!A要刷,B跟着刷,Fail,此时只有B的信息能够刷上,A写入的东西根本没有刷上去。
比较确信的是,A和B都能成功进行写入Buffer的动作。(注意这句!)
但我不确定,A写入的Buffer是否是B接着要写入的。另外,Double Buffer这种工作方式是否只有具体的两块Buffer可以写入,上网查了一下,说是并不存在两块特定的地方,只是地址的切换。
请高人指点!