有没有人设法让OpenGL ES 2.0在动态壁纸中工作?我有一个使用OpenGL ES 2.0的类,可以作为GLSurfaceView的渲染器运行良好。但是,我希望它能够用作动态壁纸。我找到了Robert Green的GLWallpaperService,但这是基于较旧版本的GLSurfaceView,并且不支持运行OpenGL ES 2.0所需的setEGLContextClientVersion。
答案 0 :(得分:10)
我设法通过扩展GLSurfaceView然后将其包装在壁纸服务中来获得基于opengl的LWP。我没有专门测试过opengl es 2.0是否适用于这种方法,但我认为没有理由不这样做。
您可以在https://github.com/JesusFreke/Penroser/tree/master/src/org/jf/GLWallpaper找到LWP特定文件。它们应该是通用的,并且可以在其他项目中使用。有关如何使用这些类的示例,请参阅https://github.com/JesusFreke/Penroser/blob/master/src/org/jf/Penroser/PenroserLiveWallpaper.java
答案 1 :(得分:1)
this blog post处的代码使Robert Green的GLWallpaperService适应OpenGL ES 2.0。使用它可能会有一些成功,但是使用JesusFreke的实现可能会更简单。
如果您成功改善了GLWallpaperService,请submit your changes back to the project以便我们都能受益。