Android graphics true facts - HTC Desire S

Saw this one on google+ and I think it's a nice read and very informative
How about some Android graphics true facts?
I get tired of seeing so much misinformation posted and repeated all over the place about how graphics rendering works on Android. Here is some truth:
• Android has always used some hardware accelerated drawing. Since before 1.0 all window compositing to the display has been done with hardware.
• This means that many of the animations you see have always been hardware accelerated: menus being shown, sliding the notification shade, transitions between activities, pop-ups and dialogs showing and hiding, etc.
• Android did historically use software to render the contents of each window. For example in a UI like http://www.simplemobilereview.com/wp-content/uploads/2010/12/2-home-menu.png there are four windows: the status bar, the wallpaper, the launcher on top of the wallpaper, and the menu. If one of the windows updates its contents, such as highlighting a menu item, then (prior to 3.0) software is used to draw the new contents of that window; however none of the other windows are redrawn at all, and the re-composition of the windows is done in hardware. Likewise, any movement of the windows such as the menu going up and down is all hardware rendering.
• Looking at drawing inside of a window, you don’t necessarily need to do this in hardware to achieve full 60fps rendering. This depends very much on the number of pixels in your display and the speed of your CPU. For example, Nexus S has no trouble doing 60fps rendering of all the normal stuff you see in the Android UI like scrolling lists on its 800x480 screen. The original Droid however struggled with a similar screen resolution.
• "Full" hardware accelerated drawing within a window was added in Android 3.0. The implementation in Android 4.0 is not any more full than in 3.0. Starting with 3.0, if you set the flag in your app saying that hardware accelerated drawing is allowed, then all drawing to the application’s windows will be done with the GPU. The main change in this regard in Android 4.0 is that now apps that are explicitly targeting 4.0 or higher will have acceleration enabled by default rather than having to put android:handwareAccelerated="true" in their manifest. (And the reason this isn’t just turned on for all existing applications is that some types of drawing operations can’t be supported well in hardware and it also impacts the behavior when an application asks to have a part of its UI updated. Forcing hardware accelerated drawing upon existing apps will break a significant number of them, from subtly to significantly.)
• Hardware accelerated drawing is not all full of win. For example on the PVR drivers of devices like the Nexus S and Galaxy Nexus, simply starting to use OpenGL in a process eats about 8MB of RAM. Given that our process overhead is about 2MB, this is pretty huge. That RAM takes away from other things, such as the number of background processes that can be kept running, potentially slowing down things like app switching.
• Because of the overhead of OpenGL, one may very well not want to use it for drawing. For example some of the work we are doing to make Android 4.0 run well on the Nexus S has involved turning off hardware accelerated drawing in parts of the UI so we don’t lose 8MB of RAM in the system process, another 8MB in the phone process, another 8MB in the system UI process, etc. Trust me, you won’t notice -- there is just no benefit on that device in using OpenGL to draw something like the status bar, even with fancy animations going on in there.
• Hardware accelerated drawing is not a magical silver bullet to butter-smooth UI. There are many different efforts that have been going on towards this, such as improved scheduling of foreground vs. background threads in 1.6, rewriting the input system in 2.3, strict mode, concurrent garbage collection, loaders, etc. If you want to achieve 60fps, you have 20 milliseconds to handle each frame. This is not a lot of time. Just touching the flash storage system in the thread that is running the UI can in some cases introduce a delay that puts you out of that timing window, especially if you are writing to storage.
• A recent example of the kinds of interesting things that impact UI smoothness: we noticed that ICS on Nexus S was actually less smooth when scrolling through lists than it was on Gingerbread. It turned out that the reason for this was due to subtle changes in timing, so that sometimes in ICS as the app was retrieving touch events and drawing the screen, it would go to get the next event slightly before it was ready, causing it to visibly miss a frame while tracking the finger even though it was drawing the screen at a solid 60fps.
• When people have historically compared web browser scrolling between Android and iOS, most of the differences they are seeing are not due to hardware accelerated drawing. Originally Android went a different route for its web page rendering and made different compromises: the web page is turned in to a display list, which is continually rendered to the screen, instead of using tiles. This has the benefit that scrolling and zooming never have artifacts of tiles that haven’t yet been drawn. Its downside is that as the graphics on the web page get more complicated to draw the frame rate goes down. As of Android 3.0, the browser now uses tiles, so it can maintain a consistent frame rate as you scroll or zoom, with the negative of having artifacts when newly needed tiles can’t be rendered quickly enough. The tiles themselves are rendered in software, which I believe is the case for iOS as well. (And this tile-based approach could be used prior to 3.0 without hardware accelerated drawing; as mentioned previously, the Nexus S CPU can easily draw the tiles to the window at 60fps.)
• Hardware accleration does not magically make drawing performance problems disappear. There is still a limit to how much the GPU can do. A recent interesting example of this is tablets built with Tegra 2 -- that GPU can touch every pixel of a 1280x800 screen about 2.5 times at 60fps. Now consider the Android 3.0 tablet home screen where you are switching to the all apps list: you need to draw the background (1x all pixels), then the layer of shortcuts and widgets (let’s be nice and say this is .5x all pixels), then the black background of all apps (1x all pixels), and the icons and labels of all apps (.5x all pixels). We’ve already blown our per-pixel budget, and we haven’t even composited the separate windows to the final display yet. To get 60fps animation, Android 3.0 and later use a number of tricks. A big one is that it tries to put all windows into overlays instead of having to copy them to the framebuffer with the GPU. In the case here even with that we are still over-budget, but we have another trick: because the wallpaper on Android is in a separate window, we can make this window larger than the screen to hold the entire bitmap. Now, as you scroll, the movement of the background doesn’t require any drawing, just moving its window... and because this window is in an overlay, it doesn’t even need to be composited to the screen with the GPU.
• As device screen resolution goes up, achieving a 60fps UI is closely related to GPU speed and especially the GPU’s memory bus bandwidth. In fact, if you want to get an idea of the performance of a piece of hardware, always pay close attention to the memory bus bandwidth. There are plenty of times where the CPU (especially with those wonderful NEON instructions) can go a lot faster than the memory bus.
All credit goes to Dianne Hackborn. Thanks for sharing this!

HAHAHAHA good facts, and very interesting!

Great post

yup, Nice Post!

Interesting observation!

Related

Much Awaited Windows Mobile 7

The much awaited windows mobile 7 interface and all other info below
Microsoft is currently developing Windows Mobile 7, the first revolutionary change to its mobile device operating system. Recently, I was given a document by a source inside Microsoft that details the touch and gesture plans for Mobile 7.
Below, you’ll find over 3,000 words detailing my notes from the document. I can’t publish the document here, at least not until after the product is announced, to protect my sources. I will provide the document to trusted journalists in order to share and show proof of this information. If there is anything I leave out, please don’t hesitate to ask and I will try to provide a screenshot or answer.
Windows Mobile 7 will dramatically change the way we use mobile devices. It will emphasize the use of touch on the device, as well as motion gestures created by using the device. It is, absolutely, Microsoft’s effort to beat back the iPhone, and the iPhone is referenced several times in the document.
Windows Mobile 7 will use touch gestures, similar to how the iPhone does. You will be able to flick through lists, pan, swipe sideway, draw on the screen. A lot of emphasis has been put on making navigation easier and doing away with scrollbars, including a new scroll handle that allows for multiple ways of finding items extremely fast.
Windows Mobile 7 will use motion gestures, something the iPhone does not. It will not use an intricate and complicated series of gyroscopes and accelerometers. Instead, it will use the camera on the phone to detect motions and create appropriate actions. You will be able to shake, twist and otherwise manipulate the phone and get things done. The phone will be able to perform actions when placed face down on a surface, and it will know when it is in your pocket or bag.
Windows Mobile 7 will have an exciting locking screen, that will allow you to play around with it, draw on it, shake it and completely otherwise mess with it.
Windows Mobile 7 will have dramatically improved visuals, different from the iPhone and much more similar to the dark and futuristic visuals of Windows Vista. It will feature graphical transitions, subtle effects, and other things to make it more interesting to look at. This is not detailed in the document, but featured in the multitude of screenshots.
Windows Mobile 7 is designed to use the finger, not the stylus, though many devices will be required to include a stylus. It is designed to be easy to use with the hand, including one-handed, and to be fun to use and easy to understand. It is designed to be used on devices with no buttons, few buttons, lots of buttons, full keyboards, and devices without touch screens.
Windows Mobile 7 is clearly designed for better media playback, with screenshots indicating a much-improved Media Player and photo gallery application. There is talk in the document of a games mode. Mobile Internet Explorer runs full-screen web pages in a minimalistic interface, and has “tabbed” browsing, except you can switch tabs by shaking the phone.
The keyboard has been improved, but plans for a full touch keyboard, a la the iPhone, have been shelved until a future version of Windows Mobile.
Below are my detailed notes. Some of it is raw, some of it is very detailed. It is accompanied by screenshots direct from the document which show off other features planned for Windows Mobile 7.
Goals of the New User Interface.
Touch, gestures, scrolling, and direct manipulation. Also, animations, transitions, motion gestures, and codenames “Phosphur” and “Starburst”.
Goal: Finger optimized, best in class touch experience that users are comfortable with everywhere.
Requirements: simple, memorable and fun; consistent, predictable and interesting; natural movements, natural animations and transitions; and enhance the mobile experience, not degrade it.
Goal is to support hardware with buttons, hardware with buttons and touch screens, and touch screen-only devices. The Touch-only devices are specifically referenced as “iPhone compete”.
User experience requirements: consistent UI interaction across the device (up and down should always scroll up and down lists, not something else), should not be overloaded. The new UI will not be opt-in for applications, but required, so old applications will all get it. There will be a “game mode”, where games will be allowed to override the UI requirements and use similar movements for different actions, allowing games to have more complicated controls than the average app.
There will be audio and visual feedback, only where appropriate, like indicating the top and bottom of a list, which objects are touchable, and a “ring of fire” indicating where you press and hold down your finger.
Designed to be used by a finger, without a stylus. Microsoft Research is researching the size of the average fingertip/tap size. Currently, they are working with the assumption of a 7.6×7.6 millimeter fingertip size. The goal is a device that can be used almost entirely one-handed with the thumb of the hand holding the device.
There were plans to implement the Soft Input Panel (the on-screen keyboard) as a finger accessible portion of the UI (like the iPhone does), but it was cut for Windows Mobile 7.
Tap drills down in a list, but some lists will have you tab once to select, once again to drill down the list. Interface elements will be designed so there is no fear of users making a mistake and missing their target. It will be able to dynamically resize elements of the user interface, prioritizing them and making them easier to hit. Corners, like the close button, scrollbars, icons and the title bar/status bar, will all be able to grow to make things easier on the user.
A stylus will be required on devices meeting certain screen size, orientation, DPI and resolution marks. User interface elements will scale their size and be prioritized in order to make hitting them easier, especially scrollbars, corner elements, icons, the title bar and the status bar.
Touch may be the actual product name as it stands.
Gestures for scrolling (horizontal and vertical), task and menu access, press and hold controls, list items, press and drag, and launching shortcuts. The device will be able to detect finger velocity, scrolling further if the user’s finger moves faster.
They are considering the need for scroll bars when users are scrolling with gestures. Current plan is to show them on Touch devices when flicking through a list, but not show them on button-only devices when scrolling.
When a dialog is longer than the screen and needs to be scrolled horizontally, they are considering replacing the scroll bar with a visual indicator, like text fading off the edge of the screen. Pressing and holding launched the context (right-click) menu, as it does now.
By default in a list, tapping drills down items, but there will be visual and audio feedback if drilling doesn’t occur and the user is merely focusing on an item.
A stylus will be required for device makers to include, based on screen size, screen orientation, and screen resolution.
Microsoft is considering if it needs to support screens and drivers that do multi-touch, but multi-touch is not a base feature of Windows Mobile 7. Multi-finger touch is shown for cropping and rotating photos, but there is no indication if this is software based or requires multi-touch hardware.
Motion Gestures.
There will be various finger motion gestures, used for scrolling vertically and horizontally, task and menu access, pressing and holding on controls, list items, pressing and dragging, and launching shortcuts.
Some UI elements, called Spinner and Pivot, will have a gesture where you swipe them from left to right. In a Spinner, you have a single item with left and right buttons next to it, but instead of hitting the left and right buttons, you can just swipe to change the option.
There will also be motion gestures, where the user moves the device to invoke certain commands. Microsoft Research has a technology concept that uses the device’s camera as a motion sensor, enabling motion control while using the device. This means devices will not need accelerometers and other complicated gyroscopes to get these features, and that existing Windows Mobile devices could be upgraded to full Windows Mobile 7 functionality. These gestures will require the camera to be operating all the time a gesture may be used, which will affect battery life.
There would need to be support for gestures when the device is locked, including slider control, which hints at a similar locking mechanism to the iPhone. It will also support changing screen orientation when turning the device sideways, just like the iPhone does, but using the camera, not a gyroscope.
Windows Mobile 8 will support gestures in the auxiliary screen. Windows Mobile 7 will not.
Gestures shown include in music or a slideshow, shaking the phone left or right to go to the previous or next song or photo, and shaking the phone in order to shuffle it. Here’s an image, which may only be a mockup, or it is showing us what Windows Media Player will look like on Windows Mobile 7, as well as the picture viewer:
As you see, Media Player has an emphasis on album art along with other cool visual elements. Also notice the ever-present battery and signal strength indicators have been placed inside the soft key buttons at the bottom of the screen, saving screen real estate and making them a lot cooler.
Another gesture: When pressing the directional pad down in a full-screen media application, such as a photo application, you can move the device forward and backward to zoom in and out of the image.
windows mobile 7 continue
The web browser will incorporate gestures for back and forward actions. Here’s an image:
Notice the differences in Internet Explorer. The interface is simpler and much nicer, with just an address bar and go button, the web page is a desktop version, just like on the iPhone, and the browser has tabbed browsing, used by gesturing through a series of graphical thumbnails. This is very impressive.
The camera will also cause certain actions based on light sensitivity. For example, if you put your phone in your pocket or in a bag, it will shut off the screen, and can even make the ringer louder or put it on vibrate, as directed. It can also turn the screen on automatically when taking the phone out, trigger the timer on the phone’s camera when the phone is placed face down on a surface, automatically activate the camera flash based on available light, snooze the phone’s alarm when waving your hand over the phone’s camera, taking a picture when anyone walks past the phone (or any other desired action, like making a noise), or remotely connecting to other devices when the phone sees them.
Waking Up and the Lock Screen.
Here’s an example of a gesture, shaking the phone to wake it up:
The document says that gestures should be distinct, convenient, easy to use, and they should also be fun and have feedback that responds to the user’s action. They shouldn’t be hard motion, but simple jiggles or shakes, with the screen reacting to the amount of shaking, the number of shakes, that sort of thing.
An example of the screen showing a transition from the device being asleep to awake:
As you see, it’s a very nice and detailed, but subtle graphical transition. Microsoft never cared about transitions before, but it looks like Windows Mobile 7 will be different.
There’s also a part talking about allowing the user to “doodle” on the screen (their word, not mine), letting users draw doodles on the device lock screen, as well as shake the screen to affect the wallpaper (like making water run, or blurring an image). The iPhone’s lock screen is an iconic part of the device, and Microsoft wants to have a cool lock screen without copying Apple, so the plan is to give you fun things to do on the lock screen.
Here’s an image showing the user doodling. Notice the use of two fingers, hinting at software-based simple multi-touch, or perhaps the image assumes the device has multi-touch hardware?
And a screen that has been shook or doodled on:
That makes for a pretty cool locked phone.
Touch Scrolling/Flicking.
Users will be able to flick their way through lists and swipe sideways for certain actions and pivoting views. When scrolling through lists, letters are shown to indicate as the user makes his way through the alphabet, as well as the addition of a scroll bar. There will be a visual bump when reaching the end of a list.
Besides flicking up and down, the user will be able to pivot sideways between different hotlists. The user can swipe to pivot between each, tap a selection in the pivot wheel, or hit an arrow to launch a pivot selector for all available pivots.
An example of pivoting in the Recent Programs menu:
Here’s a screenshot of Outlook’s inbox:
Also shown is flicking and swiping through an unnamed maps application, based on Windows Live Maps, and flicking based on the velocity of the user’s finger. Other types of finger gestures include the use of spinners and sliders, and unrestricted omni-directional movement.
A screenshot of panning in the maps application:
Those arrows on the sides of the screen are shown as being used in all applications, including IE Mobile, to let the user know when they are panning the screen.
When hitting buttons/icons on the screen, the UI will try to prioritize items and determine which one the user wanted to hit, so users who are sloppy with their fingers will still get the desired result. It will use this smart targeting when using your finger, but not when using the stylus, a very smart design decision. When using the keyboard, the letter enlarges and appears above your finger when you hit it, just like on the iPhone. When highlighting text, a zoom/edit box appears above it to show what you are highlighting. When in full page view in IE Mobile, if you hit an area with links it will zoom in with a bubble and help you choose from the links. Observe:
Notice Word Mobile. It has the Office 2007 Ribbon, but it appears to be lifted directly from Word 2007 and far too small to be used on a mobile device. Assume that this was put in for the mockup, and not an actual application screenshot, but also assume that they are going in the direction of a Ribbon-based user interface for Office Mobile.
There is handwriting recognition listed for OneNote Mobile.
An example of a context menu, activated by pressing and holding in an area (like right-clicking on a PC):
Other examples of what Microsoft calls Press N Hold UI elements include an application launcher and a quick scroller (for quickly moving through a list with a scrollbar and the first letter of list items):
Currently, when scrolling down a screen with the directional pad, the selector moves to the bottom of the screen, then scrolls downward one item at a time. In Windows Mobile 7, the list scrolls upwards as the selector moves downwards, acting in sync so that the selector does not reach the bottom of the screen until it reaches the end of the list. This gives the user feedback on how long the list is and where the user currently is within the list.
When the user flicks to scroll within a list, a scroll handle will appear on the side. If the user touches it, the user can drag the scroll handle up and down for faster scrolling. This replaces the scroll bar. The more the handle is moved, the faster the screen will scroll. A screenshot:
Scroll bars in Windows Mobile 7 will never be part of the screen, but rather floating transparent visual elements on top of it. They will only be used when necessary.
A filmstrip view is shown, with the music filmstrip clearly showing a Zune icon with the option to purchase the song:
There are many pages showing other UI elements, including radio buttons, Spinners, sliders, text entry boxes, combo boxes, drop down menus and such, that I have left out. If anyone desperately wants to see them, let me know and I can add screenshots.
There’s a list of gestures that are being explorer and may or may not make it into Mobile 7, including a gesture to dismiss an on-screen notification by shaking it off the screen, a gesture to automatically take you to a Smart Search notification panel, turning the phone like turning a key to unlock it, Pivoting by gesturing the phone sideways, moving through lists by shaking the phone up or down, switching the camera into black and white or other modes by shaking it down, adjusting camera aperture and shutter speed by rotating the camera, sending a file by “tossing” it to another device.
I left out most of these, but if there are any more you want to see, just let me know and I will try to accommodate. Here’s the camera gesture, just because the UI is so cool:
There’s a list of list view options that are likely cut, including expandable/collapsible headers in grid view (I also didn’t cover grid view), a carousel view (sort of like a vertical pivot), scrolling one item at a time with touch, accelerometer gestures.
Windows Mobile 7 will ship in 2009, according to the document. This makes sense with the Mobile 6.1 point release that is coming around now. Hopefully, Bill Gates will announce Windows Mobile 7 at CES tonight, but if not, you now have advance notice of what is coming next year. Microsoft clearly has a lot planned to make Windows Mobile 7 the revolution it needs to be to compete with Apple, and Mobile 7 is going to bring some cool and excitement to Microsoft’s smart phones.
welcome to yesterday
A quick link to the same old story would have saficed...
this sounds so familiar...
hmmm thx for the "new" information i wouldnt have known if it wasnt for u thankyou
Did they say how many times a day it would crash and reboot itself?? lol
Sorry, I was being rude to the original poster! Thanks for the informative highlights of WM7 and I look forward to all future threads concerning this subject.
**Note** I aim saying this under direst from my wife who thinks I'm being rude....
mchapman007 said:
Sorry, I was being rude to the original poster! Thanks for the informative highlights of WM7 and I look forward to all future threads concerning this subject.
**Note** I aim saying this under direst from my wife who thinks I'm being rude....
Click to expand...
Click to collapse
The documentation is really huge.... i will have to sit and sort it out ..!
if you want a peek through this , visit http://www.htcclub.net/en/shownews.php?ID=294
i just wanted to help the homies right here ...
let me know who needs further clarification
SpringfieldXD45C said:
Did they say how many times a day it would crash and reboot itself?? lol
Click to expand...
Click to collapse
Well i will ask them and let you know... how many times exactly it will ... crash ...
i have a feeling these new gestures will take using (read: failing to use) the phone while drunk to new levels!
constantly using the camera as a light sensor is going to be just great for battery life......

WM MarketPlace - Increased App Standards?

I was wondering, with the Windows Mobile Marketplace coming in 2 weeks, whether it will step up app standards, particularly graphical standards? Comparing primarily to the iPhone (sorry), and focusing on differences I find mainly with gaming (;}), WM's applications are behind in some of these areas:
Software Icons
WM 6.5 is a step forward graphically. The icons actually properly blend! However, I see many developers overlook icon creation. Well I'm picky, and I see too many icons with poor use of colours, jagged edges or edges that are blended to white (instead of transparent, if you know what I mean). And it can be done - SPB Mobile Shell replaces some of the ugly WM6.0 icons with fantastic ones.
Menus and Controls
The iPhone has games and apps that have menus that utilize scrolling and finger-friendliness. This is one of the issues with supporting WM6.0 and WM6.1 - they don't have WM6.5's kinetic scrolling. While some apps create their own scrolling (ThumbCal and Resco Contact Manager, quite a few developers seem to opt for simple menus. Most games I've tried that use menus or numerous controls on the display make them small - therefore less finger-friendly. Some of the great games I've played were developed without touch really considered - small controls & menus, not utilizing touch gestures and scrolling...
On the topic, how do options and settings show up on WM6.5? They are so ugly on WM6.0 (why I haven't flashed? I'm waiting for a final release of 6.5, based on the official ROM).
Graphics of the UI
Some games have proven to be kind of PSP-graphical standard. Not as in all the action, but that many corners and edges aren't blended properly (giving that jagged edge look). Some just look plain terrible. Sharper graphics that also look good are possible(Warfare Incorporated), but 1 game has stunned me. My Little Tank by AstraWare / Binoteq. It's a game that matches the iPhone in perfect blending and stunning graphics, and imagine if all WM apps were like that...
Unified Graphics
Many of the iPhone's apps have headings and interfaces that match the overall OS. It would be nice if you could identify an app as a WM app. Certain games (Warfare Incorporated) have their own UIs, and that is effective to fit in with gameplay. However, some apps don't even have a unified graphics within the app itself. If anyone has tried the game Towers Trap by Zone Projects (tower defense game), I found the graphics also superb, but the title menu (and gameplay controls) looked so lame compared to the gameplay. On a side note, there was rather awkward spelling in that - completion of a game gave the text 'CONGRATULATION!!!', and you could build 'ROCKET LUNCHERS'.
Fullscreen Apps
Is there a proper way to make them? I minimized some games with the end key on my Elf; when I maximize them the 'taskbar' of WinMo hides, but takes over the space (i.e. tapping the screen where the taskbar should be functions like a taskbar is there)...
Multitasking is a big feature of WinMo, hopefully it gets prettier (and admittedly I can't use it much due to the ridiculously under-spec'd Elf), but it should work right.
Price
At what price will apps enter the MarketPlace at? I understand they probably can't get as cheap as the iPhone's (Microsoft's price on releasing an app + a smaller target audience), but currently a good app can cost quite abit. And often I find myself using expensive apps to replace what should be perfectly fine with an OS (calendar, contacts, file explorer - you name it).
Oh well, apologies, my rant is now finished.
Uploaded images as attachments, sorry.
Anyways, what are your thoughts?

[Wallpaper][V9] JellyBeans GLES2 3D -manyFeatures- highly customizable

Updates:
Version 13 28.10.2012:
-Many new features added on htc evo 3d version
-neverending road, drag to drive
-big 3d analog clock
-timeshift-displacement lava-like shader material
-Sterescopic suport, red-green, s3d and normal mode
-...
Version 9 10.10.2012:
-Faster Rendering for all Objects
-Changed to old fluid colors
Version 8 07.10.2012:
loading custom obj files!
Load any 3D-Mesh to your 3D live wallpaper!
Just place "beammeup.obj" on sd root and activate loading from settings.
Try with attached exampes.
News: New HTC-evo-3D stereoscopic Version in new thread...
obj-import will work for both versions soon:
http://forum.xda-developers.com/showthread.php?t=1904203
Version 7 25.09.2012:
saved some cpu-power, reworked internal framerate-and sensordelay, re-balanced Color Fluid Surface-Particles, fixed a bug of previous Versions not showing 3D-Andoid if active alone.
Version 6 25.09.2012:
HTC-Evo-3D Stereoscopic Flying Particle added in landscape and portrait
Version 5 25.09.2012:
-HTC-Evo-3D Stereoscopic 3D Mode supported in landscape and portrait with auto switchig orientation. Use with "Jmz 3D Switcher". 3D-Mode can be used with other Objects. It has one build-in Image yet and can load custom, pre-interlaced in devices resolution. Will add sterescopic support for 3D-Objects like the Android and loading custom obj´s. Also particles flying into your head...
-Optimized color fluid and beta-particles a little and rebalanced the connection between both so activate both and test.
-I forgot to disable multisampling on Version 4 so it is the only version with multisampling. It will not run on devices without ms. Also it looks a little better and runs a little slower. This is was only Version 4, "fixed" on Version 5...
Fix Version 4 24.09.2012: Path to not-cropped Image will be saved since this version, so selected Image will come up after reboot or resetting wallpaper. If image is not avilible because sdcard is not mounted yet after reboot, backup tex will be used until sdcard is mounted. If Image is renamed or deleted, also backup tex will be used until you set another image or restore missing file. So all Settings should work fine now.
Note: Framerate and Sensorspeed are tweaked to 100% to give you a very smooth first run, until you touch the framerate slider first time.
I can't stop touching my phone!
BIG UPDATE Liquid Version 3 23.09.2012:
So much new stuff: New Objects, New Features, New artworks, New Settings, many Fixes and Changes, improved stability.
New Objects:
-The amazing Color Fluid Surface(including; Liquid Colors, Anti-Color, Particles, a swimming Object, Connections to other Objects, own new sub-section in Settings)
-Full Screen Image(just shifting a little with homescreen)
-New Liquid Beta-Particles (linked to the Fluid Surface to make 2 fluid physics engines connected driving each other!)
-The amazing Color Fluid Surface:
Get a realy liquid screen.
Make fine colorfull swhirls with each finger or mix the whole fluid witch all touch points.
Continuously auto-selecting the "next most-amazing color" for each touch point.
See the colors mixing transparent on any background.
Finger 4 will dropp Anti-Color, the mathematical opposite of Color. Anti-Color and Color will be colorfull neutralized against each other. Naturally Anti-Color is invisible but I found a way to show it. It´s enabled on default and will change to it´s naturally invisibility if switching to "Inverse Fluid Colors".
The Engine has it´s "own" swimming Particles and a swimming customizable Object.
Some Objects are connected to the fluid and will swimm in fluid and/or add forces to it.
The Fluid Particles are very fine and have some options, you can select an independent build-in texture to keep them look Particle-like while using any Picture on other Objects.
Fluid Surface code is great but calculated on cpu and needs power at higher fluid resolution. This needs some optimizations, I will try to move some expensive calculations to faster scripts or buffer-array-operations to make it run faster at higher resolutions. Rendering fluid is already fast.
-Static Background Picture. It´s just shifting a little with homescreen. If you select a not-transparent Picture, background will hide the 3D-Android and the 3D-Background Particles, so don't forget to disable hidden Objects to safe power.
-New Liquid Beta-Particles.
Interesting dynamic physics. Connected to Fluid Surface, if active together, engines will move each other, result will move very dynamic or chaotic.
Beta because unoptimized, slow, cpu draining, laggy touch and unstable physics could force close somtimes because moving out of bounds. But It can blast the Fluid
-New Image Artworks all supporting Transparency:
If you want to use old removed Images, you can extract the Images from old apk file.
-New Settings. Added icons to most options. Select Picture direct from Image-Buttons.
As simple and friendly as possible.
Linked gravity-sensor-delay to framerate slider to make it fast or power-saving together.
Added info and contact button linked to this thread(nothing else online yet).
Wallpaper runs fine without sdcard now. Just Cropping Image is not possible without sdcard reasonable.
- Build on Android 4.1.-, minimum required Android 2.2.
Runs Best on 4.1 with "additional features" and best stability. Settings Icons will not be visible on older Androids than 2.3.3 if I am right.
Runs on every phone and virtual device I tested. Also it runs on my TegravII Tablet on Android x86 4.0 R2 but only the 3D-Android is shown and changing Picture works but everything else not. So I will try to get it running complete on not fully compatible Android x86 later.
-Bugs: Nothing is realy broken for me. For left bugs seems just trying again makes it fine.
Loading or Cropping Pictures could still fail on bigger images or incompatible formats. I will rework the image handling a little softer to make this stable. Unfortunately Wallpaper can force close on first start in some cases.
This was next step to get everything ready for more interesting stuff.
Please send some feedback after testing.
______________________________________________________
______________________________________________________
Version 2 28.08.2012:
-New Version Build on Android 4.1.(V1 was build on Android 2.2)
-Fixed a Cropping Bug(should run more stable on most devices)
-Added Settings and Wallpaper Picker Icon, Picker can be launched after Setup
-Some Changes on loading Settings, Settings can be used before setting Wallpaper now
-This Update should fix most bugs and enable new UI in Settings!
Wallpaper Description:
Highly customizable by loading Images to interacitve Objects on fast GLES2 (OpenGL ES 2.X) Engine.
MainFeatures:
-Load any Image from Gallery to any interactive object! (supporting jpg and png with transparency)
-Load any Image cropped from Gallery to any interactive object! (supporting jpg and png without transparency)
-Fast GLES2 Engine! -Multitouch -Gravity-Sensor
-Transparency on all objects (if transparent png used)
-5 included Example Images with transparency
-Many Settings
Objects:
-Big multitouch Layer in foreground supporting G-Sensor
-Background 3D-Particles floating and rotating on Home-Screen-Shift
-High-Quality Particle System, dropping Particles from all touch-points to Gravity-Direction. Particles are rotating and random glittering when dying.
-The Bouncing Object. Elastic, downfalling, touchable, could be anything depending on the picture you select. This can get knot, you can unknot by throwing around or resetting by hiding Wallpaper(opening an app or turning display off and on will reset physics)
-The 3D-Android. Mustsee! Smooth, high Quality 3D Object with fine Mapping your Image. Rotating on Homescreen Shift and Gravity-Sensor.
Engine/App Features:
-required Android 2.2. <-> 4.1 compatible.
-Superfast GLES2 Engine on low CPU Power. Everything is displayed via optimized Shaderscripts on the GPU Buffer.
-Adjustable Framerate. Depending on Device Speed and selected Objects you can save Power by slowing down Framerate. Best result shold be about 90% with a little delay. At 100 % it will run without delay, should be no problem but not required.
-Low CPU-Power at all. Worst case with all Objects active and 100% Framerate(no delay) it consumes only about 30% CPU Power on my Evo 3D.
-Wallpaper only needs Power if visible. Propper freeing all recources and unregistering sensors if invisible.
-Settings Launcher in Notification Bar.(could be toggled in settings)
-Can be moved to sdcard in app menu
-I will implement much more (ai talking to you, more Physics, 3D-Wallpaper-Designer-App, obj-Importer,Kinect-Scan-Importer...)
Premissions:
Change/Delete External Storage. Neede to save the cropped Image.
Loading From Galery Info:
Without cropping only a link will made to load the original Image. Loading linked Image can fail! Chance to fail is higher on larger images. Also re-initialising after sucsessfull load can fail. Also speed will slow down if using big images. No Problems on smaller images, great for loading png icons with transparency. Ideal size is 512x512 Pixels (Image will be used direct as gl texture without resizing). After rebooting Device link to Image could get lost and backup tex will be loaded. Please select Image again.
By Cropping a resized 512x512 Version is saved on sdcard/jbGLESIIwallpaper/curbg.png. You can replace this Image with a transparent png for example and it should come up if you select cropped from Gallery without finishing cropping(that would overwrite the replaced)
This should work without Problems. Cropping Pictures could fail. Try again, this should bring up any jpg or png.
BUGS!!!
-Please set Wallpaper before launching Settings!!! Launching Settings before setting Wallpaper can drive you into strange Behaviours*.
-Wallpaper needs SD-Card! Wallpaper should run without sd but needs sd to start, to launch setting and to bring up custom images. If custom image is selected, wp should use backup Image and load your selected if sd is mounted again.
-Selecting Images from Gallery can fail. Please try again or try cropped.
-Selecting Images from Gallery can crash the Wallpaper or get into strange Behaviours*.
-It is only tested on my Evo [email protected], a Xperia [email protected] and some emulator images. It works on the SDK-Emulators GPU-Emulation (faster as suspected). Loading the Image as GLESII Texture needs the GPU to support the pixels format, this may fail on some devices or drivers.
-Wallpaper will start on default settings after rebooting device, setting another Wallpaper, crashing or re-installing, but your Settings are saved and will be restored if launching Settings Menu.
*strange Behaviours: waiting, staying black, force close, not opening settings, text in settings broken, asking for superuser premissions.
If you get into strange Behaviours please kill the app from app menu and try again. Everything will work fine!
a bug-free version would have not all the features yet. I am very sorry for any Problem and except everyone will be able to get it running fine.
I hope someone will have fun with it! I like it. I coded this using many open sources. It is just the beginning, to get the engine perfect with all features I want. This will be much more soon.
Downloads:
looks pretty sweet. Nice job. Will report any bugs I find.
Update Version 2 28.08.2012: Must Bugs fixed, 4.1 build
Updates:
Version 2 28.08.2012:
-New Version Build on Android 4.1.(V1 was build on Android 2.2)
-Fixed a Cropping Bug(should run more stable on most devices)
-Added Settings and Wallpaper Picker Icon, Picker can be launched after Setup
-Some Changes on loading Settings, Settings can be used before setting Wallpaper now
-This Update should fix most bugs and enable new UI in Settings!
Looks cool, gonna try
Sent from my SGH-T989 with Cyanogenmod 10 Alpha Power.
Great wallpaper! I loved it!
Sent from my PC36100 using xda premium
Da_Rock_1119 said:
Great wallpaper! I loved it!
Sent from my PC36100 using xda premium
Click to expand...
Click to collapse
Happy to hear that after all that work(continued)!
Thanks for first feedback!
@All: I have an urgent project and hollydays next week so updates will be small or after that (I can edit and build project on phone, so maybe I find some time at the beach
Version 3: Can't stop touching my phone!
Updates:
Can't stop touching my phone!
BIG UPDATE Liquid Version 3 22.09.2012:
So much new stuff: New Objects, New Features, New artworks, New Settings, many Fixes and Changes, improved stability.
New Objects:
-The amazing Color Fluid Surface(including; Liquid Colors, Anti-Color, Particles, a swimming Object, Connections to other Objects, own new sub-section in Settings)
-Full Screen Image(just shifting a little with homescreen)
-New Liquid Beta-Particles (linked to the Fluid Surface to make 2 fluid physics engines connected driving each other!)
-The amazing Color Fluid Surface:
Get a realy liquid screen.
Make fine colorfull swhirls with each finger or mix the whole fluid witch all touch points.
Continuously auto-selecting the "next most-amazing color" for each touch point.
See the colors mixing transparent on any background.
Finger 4 will dropp Anti-Color, the mathematical opposite of Color. Anti-Color and Color will be colorfull neutralized against each other. Naturally Anti-Color is invisible but I found a way to show it. It´s enabled on default and will change to it´s naturally invisibility if switching to "Inverse Fluid Colors".
The Engine has it´s "own" swimming Particles and a swimming customizable Object.
Some Objects are connected to the fluid and will swimm in fluid and/or add forces to it.
The Fluid Particles are very fine and have some options, you can select an independent build-in texture to keep them look Particle-like while using any Picture on other Objects.
Fluid Surface code is great but calculated on cpu and needs power at higher fluid resolution. This needs some optimizations, I will try to move some expensive calculations to faster scripts or buffer-array-operations to make it run faster at higher resolutions. Rendering fluid is already fast.
-Static Background Picture. It´s just shifting a little with homescreen. If you select a not-transparent Picture, background will hide the 3D-Android and the 3D-Background Particles, so don't forget to disable hidden Objects to safe power.
-New Liquid Beta-Particles.
Interesting dynamic physics. Connected to Fluid Surface, if active together, engines will move each other, result will move very dynamic or chaotic.
Beta because unoptimized, slow, cpu draining, laggy touch and unstable physics could force close somtimes because moving out of bounds. But It can blast the Fluid
-New Image Artworks all supporting Transparency:
If you want to use old removed Images, you can extract the Images from old apk file.
-New Settings. Added icons to most options. Select Picture direct from Image-Buttons.
As simple and friendly as possible.
Linked gravity-sensor-delay to framerate slider to make it fast or power-saving together.
Added info and contact button linked to this thread(nothing else online yet).
Wallpaper runs fine without sdcard now. Just Cropping Image is not possible without sdcard reasonable.
- Build on Android 4.1.-, minimum required Android 2.2.
Runs Best on 4.1 with "additional features" and best stability. Settings Icons will not be visible on older Androids than 2.3.3 if I am right.
Runs on every phone and virtual device I tested. Also it runs on my TegravII Tablet on Android x86 4.0 R2 but only the 3D-Android is shown and changing Picture works but everything else not. So I will try to get it running complete on not fully compatible Android x86 later.
-Bugs: Nothing is realy broken for me. For left bugs seems just trying again makes it fine.
Loading or Cropping Pictures could still fail on bigger images or incompatible formats. I will rework the image handling a little softer to make this stable. Unfortunately Wallpaper can force close on first start in some cases.
This was next step to get everything ready for more interesting stuff.
Please send some feedback after testing.
Fix Version 4 24.09.2012: Path to not-cropped Image will be saved
Updates:
Fix Version 4 24.09.2012: Path to not-cropped Image will be saved since this version, so selected Image will come up after reboot or resetting wallpaper. If image is not avilible because sdcard is not mounted yet after reboot, backup tex will be used until sdcard is mounted. If Image is renamed or deleted, also backup tex will be used until you set another image or restore missing file.
So all Settings should work fine now.
Note: Framerate and Sensorspeed are tweaked to 100% to give you a very smooth first run, until you touch the framerate slider first time.
Version 5: HTC-Evo-3D Stereoscopic 3D Mode supported and some fixes
Version 5 25.09.2012:
-HTC-Evo-3D Stereoscopic 3D Mode supported in landscape and portrait with auto switchig orientation. Use with "Jmz 3D Switcher". 3D-Mode can be used with other Objects. It has one build-in Image yet and can load custom, pre-interlaced in devices resolution. Will add sterescopic support for 3D-Objects like the Android and loading custom obj´s. Also particles flying into your head...
-Optimized color fluid and beta-particles a little and rebalanced the connection between both so activate both and test.
-I forgot to disable multisampling on Version 4 so it is the only version with multisampling. It will not run on devices without ms. Also it looks a little better and runs a little slower. This is was only Version 4, "fixed" on Version 5...
very nice, thank so much
Update:
Version 6 25.09.2012:
HTC-Evo-3D Stereoscopic Flying Particle added in landscape and portrait
Update:
Version 7 25.09.2012:
saved some cpu-power, reworked internal framerate-and sensordelay, balanced Color Fluid Surface-Particles, fixed a bug of previous Versions not showing 3D-Andoid if active alone.
News: New HTC-evo-3D stereoscopic Version in new thread...
obj-import will work for both versions soon:
http://forum.xda-developers.com/showthread.php?t=1904203
Update: obj-import: Load any 3D mesh to wallpaper.
Update:
Version 8 07.10.2012:
loading custom obj files!
Load any 3D-Mesh to your 3D live wallpaper!
Just place "beammeup.obj" on sd root and activate loading from settings.
Try with attached exampes.
Update: V9: Performance
-Faster Rendering for all Objects
-Changed back to old fluid colors
Update: Version 13 28.10.2012: many new features
-Many new features added on htc evo 3d version
-neverending road, drag to drive
-big 3d analog clock
-timeshift-displacement lava-like shader material
-Sterescopic suport, red-green, s3d and normal mode
-...

Android Multi-Window proposal

Samsung’s Multi-Window feature is one of the more fascinating aspects of the company’s recent devices. Working in two apps side-by-side is an incredible boon to multi-tasking and productivity. However, this feature has been limited to only Samsung devices. Attempts to add it custom ROMs have been aggressively shut down by Google itself. However, what if instead of baking this functionality into a ROM, it was provided through an application launcher?
This proposal takes it roots in a device that was poorly executed. The Notion Ink Adam (first generation)’s interface was designed in a panel view, allowing quick access to certain services. While a sound idea in theory, this concept and the device were poorly designed. However, the idea remains a viable prospect.
What if this panel view was baked into a launcher application? What if the homescreen was a space that could be manipulated to show up to three applications?
When Android was unified under ICS, Google introduced the Fragments API to assist in developing paneled applications (ie. tablet optimized applications) and applications that could host multiple user interfaces (ie. Gmail phone and tablet UI). What if, theoretically, an application was designed using the Fragments API that created panels for hosting applications? Multiple applications could be utilized at once, side-by-side, much like Samsung’s Multi-Window feature.
The home screen would be a blank screen with the frames outlined in some manner. Layout options would ideally include a three panel layout (each panel occupying a third of the screen) or a two panel layout (one panel occupying two-thirds of the screen, the second occupying the remaining third), always in landscape orientation. I haven’t fully thought out how a portrait mode would work. The app drawer would be accessible via a swipe from the right side of the screen moving to the left side of the screen. To ensure the drawer could be opened with a swipe without disrupting applications using swipes, there would be an active region to detect the swipe, like in the Sidebar application. With the app drawer, a short touch would open up the application in full screen. However, a long press on the application would provide a menu of options regarding which frame the application would be sent to. Widgets would not be utilized in this launcher, as there is no space or need for them.
This is simply a proposal. I don’t have the coding knowledge or experience to be able to begin experimenting with this, or to know if this is even possible. However, I thought I’d at least make this post to see what people thought. Creative criticism and ideas are appreciated, but please, nothing incredibly negative.
Basic mockups using a Nexus 10 were made and are available below. These are incredibly basic, so be warned.

Super Touch App- Reduce Lag and make you touch screen smooth.

I did not make this app, I'm just helping a China Developer to post on XDA.
Super smooth on Android touch screen, avoid content not-follow-up problems.
1. Magnificent screen sliding respond, easy sliding on screen and no longer delay.
2. Incredibly smooth on zooming web pages or images as well as any operations needing to zoom.
3. Sliding to all directions is unbelievably quick and smooth.
4. Unbelievably quick and smooth lists rolling.
5. Much faster launching and loading Apps.
6. Speedy and accurate typing experience.
7. Much rapid on playing all sorts of games.
8. The first power-saving optimization app that does not affecting phones’ performance.
Super Touch allows you to experience unprecedented smooth smart phones.
Main functions:
One of this App’s main functions is to allow Android devices sliding much quicker and smoother, which will solve the problem of slow drag.
Sliding, dragging and zooming are far smoother; content follows up your fingertip; switching columns is also a lot quicker.
Lists rolling is extraordinarily speedier and smoother, typing is incredibly easier.
There is also a very practical power-saving optimization function, which doesn’t sacrifice the performance of the phone.
Important Instruction:
720P resolution is recommended a level of 600-1314
1080P resolution is recommended a level of 1520-3998
2K resolution with Qualcomm’s GPU is recommend a level of 5186-6998
2K resolution, non- Qualcomm GPU is recommended a level of 600-1520 ( For example, Samsung S6 and Series Edge )
2K or 4K resolution with Qualcomm GPU both can use level 9998.
The above information is only reference; please adjust to the most appropriate level for specific phones.
1. Higher the GPU ability is, the smoother it will be within a higher level, relatively, a high level with a poor GPU is less effective.
2. After launching touch optimization and being enabled, it can work without running in background (about 1 minute to take effect, depend on CPU’s performance)
3. Do not switch off auto start-up, every time rebooting system requires a auto optimization permission.
There will be a small portion of extra power consumption while enabling the optimization system, and after power consumption will go back to normal.
Advanced function is a smooth level of 300 – 9998, it can be open to use when a phone reaches the standard.
No Root permission needed for all functions.
Sliding optimization will be disabled for some devices while charging, (system controls the effect when it disables) It will be notified of the optimization system disabled while charging.
YouTube : https://www.youtube.com/watch?v=sEGYF_SE7SU
Download link : https://play.google.com/store/apps/details?id=com.lucky.one
Screenshots
Reserved
5. Create a thread or post a message only once.
As a large forum, we don't need unnecessary clutter. You're free to edit your message as you like, so if you do not receive an answer, revisit your message and see if you can describe your problem better. Not everyone is online at the same time so it might take a while before you receive an answer. (Also refer to Rule 16)
Thread closed

Categories

Resources