Android:如何在背景图像上创建动画
问题描述:
我想要做的是有背景图片,为了简单起见,可以说这是一个房子前面的图片。然后,我想要一个红色的球从一个窗口移动到另一个窗口。Android:如何在背景图像上创建动画
**我想要一个背景图片和一张图片。
**然后,我希望能够将最清晰的图片确切地告诉去哪里。
我该怎么做?
我刚刚开始了解Android中的动画,并且尚未以任何方式执行此操作。
答
在android中有两条动画路线:Canvas
和OpenGL ES。 我会推荐OpenGL用于任何需要平滑度和速度的东西,比如移动的球。 您应该使用帮助类GLSurfaceView
http://android-developers.blogspot.com/2009/04/introducing-glsurfaceview.html创建视图,并实施Renderer
。
我假设您已将图片保存在您的res/drawable
文件夹中,格式为png
,球文件包含Alpha通道。
你可以在网上看到很多教程,但基本上你需要加载你的背景图像和你的球资源在onSurfaceCreated
并使用GLUtils.texImage2D
存储在纹理。
在方法中,您应该设置一个2D投影,如glOrtho2D
,然后绘制背景。
然后就在您绘制球纹理之前,您可以使用glTranslate(x,y,0)
函数将球移过房子。使用alpha混合球:
glBlendFunc(GL_SRC_ALPHA, GL_SRC_ONE_MINUS_ALPHA);
glEnable(GL_BLEND);
不幸的是,在OpenGL中编写并不像您所希望的那样直截了当。尽管您只需要2D图像,但一切都是用3D坐标完成的。但希望这给你足够的信息谷歌良好的exmaples,这是丰富的!