Raf*_*fay 11 android opengl-es pixmap libgdx
请考虑以下图片作为插图:

最初我用整个屏幕/舞台填充单个图像,直到屏幕变为粉红色.每个粉红色的斑点都是我添加到舞台上的单个Image actor.
现在我想以这样的方式实现touchDown方法:每次用户触摸屏幕时,它都会擦除触摸事件发生的图像的一部分.但是,该触摸事件不应影响粉红色blob actor后面或上方的其他Images/actors/TextureRegions.我如何使用OpenGL ES在libgdx中实现这一目标?请帮助我这方面.
我发现这个链接解释了如何修改TextureRegion,但我不知道如何使用本博客中解释的技术来解决我的问题.链接在这里
你能用FBO和模板缓冲区吗?
为您的"粉红色"层和模板缓冲区设置FBO.触摸时,将触摸作为掩模绘制到粉红色FBO的模板缓冲区.现在,当您绘制粉红色FBO时,您触摸的区域将不会被渲染,因此您将能够看到它背后的背景FBO.
这个链接http://www.opengl.org/archives/resources/faq/technical/rasterization.htm,第14.050节告诉你如何设置模板缓冲区:
您可以按如下方式设置OpenGL状态:
Run Code Online (Sandbox Code Playgroud)glEnable(GL_STENCIL_TEST); glStencilFunc(GL_ALWAYS, 0x1, 0x1); glStencilOp(GL_REPLACE, GL_REPLACE, GL_REPLACE);对于每个渲染的像素,后续渲染将在模板缓冲区中设置1位.
你可能不得不摆弄东西,这样你的面具就会以正确的方式出现(面具你触摸的地方,而不是你没有的地方.)
| 归档时间: |
|
| 查看次数: |
2909 次 |
| 最近记录: |