Planet maemo: category "feed:ffedab845b17ad5f072a1f90af70d0f9"

Kaj Grönholm

Qt5 + Distance Field Effects

2011-08-21 13:40 UTC  by  Kaj Grönholm
0
0
Yoann Lopes blogged recently about Text Rendering in the QML Scene Graph using distance field alpha testing. This technique brings smoothly scalable fonts with fast OpenGL rendering to Qt5.

Distance field is of course not limited for just fonts (although they are the most usual use-case), same technique can be used also with suitable images. Here is a video of an example application running on PC and N950 which demonstrates the effect:



As you can see, the original image becomes quite pixelated when zooming in, which is expected as image is only 256x160 pixels (smiley 64x64 pixels). But enabling smoothing with distance field shader makes it very scalable with nice anti-aliasing, outline and transparency. As the pixmap required for this is so small, GPU / fragment shader has less to process leading to better performance. Like with fonts, adding effects such as outline, smoothing, glow and shadow can be implemented very effectively.

This application is under 300 lines of QML with a GLSL shader, including slider and toggle button components. So if you have Qt5 built up and want to give it a try, source codes are available from here. Creative usage ideas and astonishing shaders are welcomed!
Categories: hacking
Kaj Grönholm

Qt Contributors' Summit

2011-06-13 22:53 UTC  by  Kaj Grönholm
0
0


I will be mostly interested in discussions about Qt5 graphics stack, qml-box2d, QtQuick 2.0 and of course QML Scene Graph. So whenever something related to these is going on, please grab me in!
Categories: hacking
Kaj Grönholm

QML Metaballs

2011-05-06 16:19 UTC  by  Kaj Grönholm
0
0
Kimi, the man with excellent genes, blogged few days ago in here about QML extension plugin that provides shader effects for QGraphicsView based Qt Quick 1.x. What makes this magnificent, is the fact that API matches to what QML Scene Graph (at least currently) has, making it a perfect solution to start experimenting with the future. Also, as it is a separate plugin sitting on top of standard Qt 4.7.x, it turns "Qt everywhere" to "shaders everywhere" right now while waiting for the full Scene Graph glory.

All you need is 1) Qt 4.7 installed in suitable environment (Linux, Windows, Symbian etc.) 2) the qml1-shadersplugin and 3) imagination for writing QML & GLSL.

What I came up with using the plugin is something they call metaballs:



Source codes are available in here, go wild! And kudos to Nokia/Qt team for providing this plugin!
Categories: hacking
Kaj Grönholm

Superior technology

2011-02-21 00:23 UTC  by  Kaj Grönholm
0
0
I decided not to blog anything right after Nokia & Microsoft deal was published. And I'm glad about that, because I have now reached the state where I'm actually excited again! Volker Hilsheimer made a very good summary about the situation from Qt perspective.

Instead of going deep into politics and sales speeches, I decided to approach this from a technical perspective. Keeping things simple and concrete, here's one example UI implemented in few hours with Qt Quick & QML Scene Graph:



Please spend a bit time looking at what is really happening in there: wave, colorize, fading, water, text highlight... This is ~300 lines of QML + GLSL, performing smoothly on good ol' N900 hardware. Same can not be done using WP7 Silverlight & XAML, period.

Qt is still the best platform for "mobile phones" and we have also here good ingredients for the "future disruption" like Nokia management has outlined. But technology is nothing without a community (a.k.a. "ecosystem"), so question is that are we going to continue the work and do it? While you think about that, I'll continue hacking with my superior technology! =)
Categories: hacking
Kaj Grönholm

QML Scene Graph demo

2011-01-16 18:00 UTC  by  Kaj Grönholm
0
0
Here is a small demo of QML animations combined with OpenGL shader effects, running on QML Scene Graph:



At first, everything is gray and plain. But once you enable QUIt mode, the whole world feels a lot more colorful and dynamic. Some call this feeling velvet, I call it.. exciting 2011!
Categories: hacking
Kaj Grönholm

MeeGo Conference & SteelRat

2010-11-14 23:41 UTC  by  Kaj Grönholm
0
0
I'm personally not attending to MeeGo Conference this year. Past two Maemo Summits have been great, so I'm sure this time things will be even Harder, Better, Faster, Stronger!

But in a way part of me is attending, as one thing I have been working with recently is a UX prototype called "SteelRat". It will be shown in Nomovok booth, running on top of MeeGo in different ARM development boards. This is what SteelRat looked like in Freescale i.MX51 during Qt Developer Days:



But anyway, wishing good times for all you attending!
Categories: maemo
Kaj Grönholm

Qt Quick Game Programming

2010-10-24 17:15 UTC  by  Kaj Grönholm
0
0
Are you interested about Qt Quick? Want to get jiggy with it and develop mad skillz? Wanna become first Qt Quick OVI Store millionaire? Good news, we have a (partial) solution!

We've been working with Qt Quick / QML for quite some time now and decided to write ~30 pages short tutorial which goes through step-by-step the implementation of 5-in-a-row game. My recommendation would be to read the tutorial while browsing game sources and reaching towards Qt Quick API documentation whenever interested in more details.

Download the "Qt Quick Game Programming" tutorial from here!
Categories: maemo
Kaj Grönholm

5-in-a-row

2010-10-24 17:01 UTC  by  Kaj Grönholm
0
0
We released today a game called 5-in-a-row. It's implemented with Qt Quick / QML and designed for 2 players playing next to each other:



Want it? Package for N900 as well as source codes are available from here!
Categories: maemo
Kaj Grönholm

Thanks & Qt Dev Days

2010-10-01 22:27 UTC  by  Kaj Grönholm
0
0
Today postman brought to me a package from Norway, containing this:


Thanks! My contributions to ambassador program have been distracted by work... Which is of course filled with Qt, but mostly behind closed doors and not directly visible to anywhere.

But I want to improve this and right here, right now* promise to release both source code and documentation soonish available. I will also attend to Qt Developer Days in Munich and hang around Nomovok booth, demoing and praising Qt & QML. Mention the keyword "fidelio", and I'll tell just for you how current Qt Quick is only the beginning and what will happen during 2011 to rule the world... Hoping to see You there!


*) This reminded me a Fatboy Slim classic
Categories: maemo
Kaj Grönholm

Desktop widgets with Qt & QML

2010-02-25 16:44 UTC  by  Kaj Grönholm
0
0
Writing desktop widgets for N900 using Qt is now possible, as Harald Fernengel explained yesterday in Qt Labs.

What I wanted to test based on this is that can desktop widgets be made also using QML? So I hacked together a Clock widget and with the similar technique also slightly modified Samegame widget:



Source code for the simple clock is available in my Gitorious branch so everyone can test and start to build cool Qt QML widgets in no time!
Categories: hacking
Kaj Grönholm

Creating fluid user experiences

2010-01-27 11:52 UTC  by  Kaj Grönholm
0
0
Recently we have been co-operating with Linja Design, brainstorming and prototyping UI/UX ideas. One of their concept is branded as "Zax 2.0", idea being to tilt the flickable area so that it reveals more content into the direction user is panning so he/she will see "further ahead". To understand what I'm talking about, please check this video.

I know there already is Cooliris and friends using similar method, but do you think this could be utilized still a bit more? Where and how would you use this if it would be easily available in the platform?

I'm open to all ideas and to prove it, show here a world premiere of "Powered by Zax 2.0" 5-in-a-row game in N900:



(And no, game is not available from anywhere yet, just under construction ;-) )
Categories: maemo
Kaj Grönholm

Snowtter + Merry Xmas!

2009-12-22 20:38 UTC  by  Kaj Grönholm
0
0
We released today a small application called "Snowtter" to bring N900 users that "Xmas is here, time to relax and enjoy!" - feeling. Basically it just shows Twitter messages related to holiday times, floating around with snowflakes & accelerometer support. But it's the idea that counts, right? =)



If you want to see this in your N900:
  1. Make sure that you have the necessary Qt libraries installed (libqt4-gui, libqt4-network, libqt4-xml, libqt4-opengl). Qt 4.5 will do, but for better performance and graphics quality Qt 4.6 is highly recommended! (Instructions on how to install latest Qt 4.6 packages from extras-devel here)
  2. Download the application package from here
  3. Install the package with "dpkg -i snowtter_1.0_armel.deb". So ssh connection, sudo gainroot or red-pill-mode required (no install-file available for now, sorry)

Thanks to all the cool Maemo/Nokia/Qt people for this year and Merry Xmas For Everyone!
Categories: hacking