renderer is:
...
public class WallpaperService extends GLWallpaperService {
...
...
public void onCreate(){
Log.d(LOGTAG, "Load textures here");
myTex mTex = new myTex(getResources());
}
...
...
public Engine onCreateEngine() {
MyEngine engine = new MyEngine();
return engine;
}
class MyEngine extends GLEngine {
MyRenderer renderer;
public MyEngine() {
super();
renderer = new MyRenderer();
setRenderer(renderer);
}
...
...
and:
class MyRenderer implements GLSurfaceView.Renderer {
private FrameBuffer fb = null;
private RGBColor back = new RGBColor(0, 0, 0);
public MyRenderer() {
Log.d(LOGTAG,"Create scene here");
createWorld();
}
public void onSurfaceChanged(GL10 gl, int w, int h) {
Log.d(LOGTAG,"SurfaseChanged()");
if (fb != null) {
fb.dispose();
}
fb = new FrameBuffer( gl, w, h);
// no need to rebuild world, it cost a lot of time
}
...
...
How i understand Wallpaper Service is designed so that if the wallpaper is already installed - then we get new renderer in preview (for example, when we want to change the settings)... and some bugs