This engine enables the interpolation of every attributes from any object in any Java project, being an android application, and opengl game, a swing/swt desktop interface, or even a console application.
A tween is a static animation running for a fixed amount of time. Therefore, tweens are first-grade candidates to animate your UIs, your splash screens, and all the static animations of your characters. The only limitation of the tween engine is your imagination.
The library is released as an open-source project, under the Apache-2 license.
You can find more information on the following pages:
- Project page
- Developer's blog
keywords: motion, animation, interpolation
The lessons can be followed at http://www.learnopengles.com.
Lesson Eight: An Intro to VBOs (Vertex Buffer Objects)
Lesson Seven: An Intro to VBOs (Vertex Buffer Objects)
Lesson Six: Texture Filtering Modes
Lesson Five: An Intro to Blending
Lesson Four: Basic Texturing
Lesson Three: Adding Per-Pixel Lighting
Lesson Two: An Intro to Lighting
Lesson One: Getting Started
The source code for the app itself serves as a useful tutorial for learning how to use the min3D library for your own projects.
Demo that shows some cool effects that can be achieved thanks to the programmable OpenGL ES 2.0 GPU pipeline, such as normal mapped specular animated lighting, real time refractions and image postprocess.
If you like the effects and would like to play a game that uses them, please try the game "AQUA SLASH GL DEMO" for free.
To move the light source, touch the screen with one finger to the desired position.
To change the background image, while touching the screen with one finger (therefore moving the light) touch with another one on the left side of the screen.
To change the postprocess effect, do the same but touch with the second finger on the right side of the screen instead of the left.
This demo requires Android 2.2 or higher.
INFO FOR DEVELOPERS: For some reason, samsung and motorola opengl driver does not allow the creation of FrameBufferObjects with color attachments of dimensions non power of 2. All the opengl calls do not generate any error and the FrameBufferObject status is ok, but then nothing gets written to the offscreen buffer if width and/or heigth is not power of 2. On HTC, LG, Toshiba and Dell devices this works well and any dimension can be used.
Since this app uses offscreen rendering for the postprocess effects, this is why it did not work with samsung and motorola devices before version 1.2.
Despite the somewhat unfair 1 star ratings of angry samsung and motorola users because of this issue, thanks everyone for the reports.
Special thanks to my sister Silvia and my friend "El Iberico" for sharing with me their Galaxy S smartphones that allowed me to debug the app and find out what the problem was.
To Harism: Thanks for your comments and yes, the problem is directly related to the off screen render target resolution.
There is not any copy of textures at any time. The first pass where the water effect is rendered is the one that uses the off screen buffer (with less resolution for performance reasons) and later, that render target is directly binded as an input texture to the final pass where the other effect is rendered (pixelization etc) to full resolution.
The Gears demo is an open source project intended to help developers learn how to create OpenGL ES programs on Android. The Gears demo was originally written by Brian Paul as part of the Mesa3D project. My implementation includes variations for Java/OpenGL ES 1.x, Java/C/OpenGL ES 1.x and Java/C/OpenGL ES 2.0. I have also added several features not found in the original implementation including touch screen support, VBOs and an on-screen FPS counter.
The FPS (frames-per-second) counter is often used as a benchmark metric for graphics programs. On Android the frame rate is limited by v-sync (typically 60 FPS) which is the fastest rate that a display can refresh the screen. Since Gears is capable of rendering much faster than v-sync on most devices it provides limited benchmarking value.
No ads, etc., just a demo for fun. Will continue to add sequences and improve existing ones through updates, and if I come up with something really cool, will try to make it into a live wallpaper.
The source code will also be made available. It provides a good starting point and tutorial into creating OpenGL apps.
Note that high-end devices are better served by NenaMark2 as they tend to hit the framerate limit (~60 fps) with NenaMark1.
- ribbon amplitude
- ribbon speed
- ribbon zoom level
- wave speed
- number of covers
- cover spacing
- background theme
- background zoom
- enable touch animation
Not all handsets support the live wallpaper feature. Please check your settings to see whether your handset does or not.