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
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.
Note that high-end devices are better served by NenaMark2 as they tend to hit the framerate limit (~60 fps) with NenaMark1.
This application contains various Examples that showcase what developers can do with this engine.
Install this to stay tuned with the progress.
Join the AndEngine-Community at:
You can find the project on Github ( http://rey5137.github.io/SlideLayout/ ).
Feel free to use it all you want in your Android apps provided that you cite this project and include the license in your app.
SlideLayout is inspired by Cyril Mottier's post (http://cyrilmottier.com/2012/05/22/the-making-of-prixing-fly-in-app-menu-part-1/ )
+ Capture video from your device camera and stream it in real time over the network
+ Motion JPEG format supported (http://en.wikipedia.org/wiki/Motion_JPEG)
+ View directly in your browser without any extra plugins (see supported browsers)
+ View using your favorite media player (see supported players)
Supported Browsers (native):
+ Chrome (under work)
Supported Media Players:
+ VLC (www.videolan.org/vlc/index.html)
+ Start the app
+ Ensure correct settings (camera, color effect, image quality and size)
+ Press the record button (should turn red when stream available)
+ Check the stream URL from the app status line (e.g. http://192.168.1.10:8080)
+ Open the stream from your browser or video player
Please send any comments, bugs, suggestions or feedback to firstname.lastname@example.org!
- Support for downloading any file type
- Support for downloading large files, with pause and resume
- Support for basic and digest authentication
- Support for opening or sending completed downloads
- Support for calculating and comparing MD5 integrity checksums
- Support for overriding any request header
- Support for viewing HTML content, and intercepting the downloads from the web page
- Quick start downloads from clipboard or entering the URL
- Add downloads manually with advanced options
- Use the share link feature from another app (e.g. Dolphin Browser, Dropbox, Sugarsync)
- Icons: http://glyphicons.com/
Tags: downloader, download manager
1. Select Wallpapers from Settings or Menu
2. Select Live Wallpapers
3. Select Minimalistic Clock Wallpaper
4. Select Settings
5. Pick your favorite color and other options
6. Select Save
7. Select Apply
1. Install the app
2. Select the widget (for example long-pressing in your list of widgets)
3. Place the widget accordingly on your home screen
4. The settings are opened; set up your colors and the update interval, then press save
5. The widget should now appear on your home screen
6. Long-press the widget to resize
7. Press the widget to see the process list
Please also check out Network Widget for Android:
Now with a refreshed modern, lightweight and responsive user interface.
- Make sure you have WiFi on and are connected from your device
- Start the app
- In the same network, open the URL indicated on the device using a normal browser
- Browse the files on your device (thumbnails or details)
- Preview media file types (image and video)
- Upload files to your device (multiple parallel uploads supported)
- Download and open files from your device
- Delete and rename files and directories from your device
- View images in fullscreen mode
- Play videos using the HTML5 video player
- View your active uploads, support for canceling them one-by-one
- Additionally view your upload history
- Browse and search the apps installed on your device
- Install apps by uploading the APK files to your device
- Download and back up apps (APK files)
- Delete user apps
Note! Installing and deleting apps requires the action to be completed on the device due to security reasons.
- Browse and search the contacts on your device
- Add, update and delete contacts
- Play your camera preview on your desktop
- Take snapshots and save them on your device
- Copy text to your device clipboard (and open URLs)
- Query the device's clipboard
- Device info
- Memory usage
- Battery usage
- WiFi info
- Option to use HTTP basic web authentication
- Small and fast web server on the device, without any 3rd party libraries
- Internet Explorer (10)
Supported media types:
- Pictures (JPEG and PNG)
- Videos (MP4, OGG and WEBM)
Note! HTML5 video support varies from browser to browser, but for example Chrome should support all of the above. For more information, please check: http://en.wikipedia.org/wiki/HTML5_video
- Contacts section to manage contacts on the device
- Enhancements to Camera section (e.g. better live preview)
- Twitter Bootstrap: http://getbootstrap.com/2.3.2/
- JQuery: http://jquery.com/
- Crystal Clear Icons: http://commons.wikimedia.org/wiki/Crystal_Clear
Keywords: wifi file transfer, wifi file explorer, wifi file manager, wireless file transfer, wireless file explorer, wireless file manager
Private Messenger is an instant messaging application which enforces end-to-end privacy. In practice messages are always encrypted and decrypted on the device, before being transferred through the internet. This means that none other than the sender or recipient is able to see the message content, not even us. This way we can respect the privacy of our users.
Version 1.3.0 included a major rewrite of storing local data on devices, making it more secure. Unfortunately, in some cases, a bug caused the app to crash right after opening. The latest version 1.3.1 addresses this issue. We apologize for the inconvenience.
Q: How exactly do you ensure privacy between the sender and recipient?
A: We use public key cryptography. During registration, a key pair is generated for each user account. The private key always stays on the user's device, while the public key is deployed to our server mapped to the user account for discovery. Messages are encrypted on the sender's device using the recipient's public encryption key, relayed to the recipient via our servers, and finally decrypted on the recipient's device using their private decryption key. Additionally, the same key pair is used to verify the sender's digital signature. For more information, see http://en.wikipedia.org/wiki/Public-key_cryptography.
Q: How about messages already decrypted on my device, or other local settings?
A: All local information, including sent and received messages, contacts and personal settings, are stored in a special encrypted database, and not in plain text for example in default shared preferences or SQLite databases. This means that even if the database file is somehow compromised (for example in rooted devices), the actual stored data cannot be seen.
Q: What kind of information do you store on your servers?
A: In short, only the bare minimum. At least the account username and public key, and then any additional information if the user so chooses. We don't store any messages - we only relay them from the sender to the recipient. There would be no point anyway, since the message content is always encrypted, and there is no chance even for us to decrypt it.
Q: Why do you run ads?
A: Unfortunately, running the server-side infrastructure is not free. Our intention is to cover this, and other development costs by running unobtrusive banner ads. This way we can provide the app for free to our users. We might consider an option to remove the ads in the future either by an in-app purchase or a paid version of the app.
Q: Any planned updates or new features?
A: Since the app is quite new, we will of course fix any bugs that come up. Additionally, we at least plan to improve usability and add more message types than text, for example images, location, etc.
- On your home screen, press the Menu button
- Select Wallpaper
- Select Live wallpapers
- Select Planets 3D LWP
- Play around with the Settings
- Select Set wallpaper
- Background textures: Wikimedia
- Planet textures: http://www.oera.net/How2/TextureMaps2.htm
- Planet textures: http://planetpixelemporium.com/planets.html
- GLWallpaperService: http://www.rbgrn.net/content/354-glsurfaceview-adapted-3d-live-wallpapers
+ Download or stream files from your device by scanning a QR code
+ Upload files to your device by scanning a QR code
+ Browse the files on your device
+ Save files or folders as favorites
+ Preview supported image and video file types
+ Basic file operations; rename, copy, move, delete and archive (including folders)
+ Select files and apply batch operations; copy, move, delete and archive (including folders)
+ Search for files
+ Open known file types
+ Send files to other applications
+ Calculate and compare integrity checksums
+ Create and extract ZIP archives
+ Sort files by name, size or last modified time
+ Download or stream files from your device (within same network)
+ Upload files to your device using a web browser (within same network), no need for any cables or extra software
+ To find out your largest files, first define your sort (sort by size, order descending), then open search, leave the query empty and only specify a minimum file size (e.g. "10m")
+ To share a picture or video to another device within the same network, select "Download from device" and share the generated QR code
+ The same feature can be used to show images on your smart TV or streaming video to your laptop (for example using VLC player) by opening the short URL
+ To upload files to your device, select "Upload to device", open the web page using the URL provided, and just select the files to transfer (multiple files supported)
Q: Why is my image/video not viewable right after uploading ("media not found" when trying to open)?
A: This is most likely due to the media scanner in Android; it might take some time before it picks up and processes the file and makes it available. You can refresh the file listing after a while, and try again. We will look into forcing a scan for certain file types immediately after upload to improve this.
Q: Why is the file size and checksum different between my original and uploaded video? The video seems to play correctly however.
A: Not 100% sure, but this could also be due to the media scanner processing and trying to optimize the file to save space. The same thing seems to happen for example when downloading certain videos from Google Drive to your device storage.
Q: Can I upload multiple files at once?
A: Yes, the browser's file chooser is configured to support multiple selections. For example on a Mac, just hold down the shift key to select multiple files.
Q: Can I download multiple files at once?
A: Yes, but with a slight workaround. You can select multiple files on your device, create an archive, and then download the archive.
Q: I seem to be having problems uploading files using device X and browser Y?
1. Download and install application
2. In your home screen, press the MENU button
3. Choose WALLPAPER, then LIVE WALLPAPER
4. From the list of live wallpapers, choose UNDERWATER LWP
5. Choose SETTINGS to play around with the settings
6. Choose SET WALLPAPER to apply
- More background images to choose from
- Possibility to specify own custom background
- OpenGL for even smoother motion
- Possibility to choose from different wave patterns
- Possibility to control darkness/brightness
- Free background images from Wikimedia and National Geographic
Tags: underwater, water, live, wallpaper, wave
1) To use as a wallpaper, select Settings -> Display -> Live Wallpapers -> Minimal Clock
2) To use as a widget, select Apps -> Widgets -> Minimal Clock
3) To use as a lock screen widget, swipe left on your lock screen and select "+" -> Minimal Clock
Trigger: An event that starts the task, for example when a headset is plugged in or connected to a Wifi network
Condition: An optional filter to limit when the task is run, for example time of day
Action: The action to execute, if the trigger and conditions are satisfied, for example launching another app or playing music
- Location (under work)
- Incoming SMS (under work)
- Network connectivity (under work)
Stay tuned for updates; new triggers, conditions and actions will be added, as well as fixing bugs.
+ More levels, themes and surprises
+ Race against time and collect points
+ Multiplayer support
+ Level editor to create and share levels
+ Smooth OpenGL graphics
+ Works on older devices also, from Android 2.3
+ Use your device sensor or touch for controls
Share your top challenges, compete with friends and compare how you score against other players.
Please also check out CPU Widget for Android: