Apunts sobre Clutter
Reading time: < 1 minute Acabo d'obrir una secció al wiki on aniré posant els meus apunts personals sobre Clutter, així doncs, si a algú l'interessa el tema pot seguir-los des d'allà.
Reading time: < 1 minute Acabo d'obrir una secció al wiki on aniré posant els meus apunts personals sobre Clutter, així doncs, si a algú l'interessa el tema pot seguir-los des d'allà.
Reading time: 6 – 9 minutes
Des de fa uns mesos m’he posat a fons amb Clutter, es tracta d’una API més una ABI programada en C per crear interficies d’usuari. Malgrat tractar-se en escència d’una API per crear espais 3D amb objectes 2D, té la capacitat de poder moure els objectes en la coordenada Z. Així doncs, és pot aprofitar la potència d’OpenGL de forma transparent i senzilla i sense haver-se de preocupar de com representar objectes 2D en espais 3D, cosa gens senzilla per un neofit en el món dels gràfics com jo.
Clutter usa el seu propi reactor d’events, però en certs casos pot usar Gobject, Glib i Gtk també. És fàcilment integrable amb DBUS i amb GStreamer. En escència m’ofereix tot el que em cal per un projecte que porto entre mans. Pels que encara no ho tingueu clar, l’interficie gràfica que usa Moblin esta programada amb Clutter com a llibreria gràfica. De fet, és aquest projecte el que li ha donat molta força a Clutter que disposa de 29 programadors a temps complet, dels quals 14 no són d’intel (intel és qui promociona amb més força ‘moblin’).
Bé doncs, aquest impuls que ha patit moblin l’han portat a la versió 0.9.8 que és realment potent i ja gairebé igual que la versió 1.0 que hauria de sortir en breu. Tot i que fins ara Clutter s’ha caracteritzat pel retard en la sortida de les noves versions esperem que aquest cop no sigui així.
Abans d’entrar a definir quins són els elements que té aquesta llibreria, comentar que també disposa de binding de python cosa que pels ‘no-programadors’, com jo, és tota una alegria. També s’ha de dir que a dia d’avui, no hi ha bindings oficials per la branca 0.9 de Clutter que és l’experimental, o futura 1.0. Així doncs, jo només he provat el Clutter fins a la seva versió 0.8, malgrat la segueixo amb lupa la versió 0.9.x; a l’espera de poder començar a fer coses amb ella quan tingui els bindings de python.
Anem al motiu central de l’article, repassar els conceptes que usa Clutter fins a la verió 0.8:
Per fer aquesta referència m’he basat amb la informació de la guia ‘Programming with Clutter‘ escrita per Murray Cumming.
Reading time: 1 – 2 minutes
Doncs jo de gràfics ni idea i menys als nivells que tocant alguns… per això tinc als amics que han fet Eng.Multimèdia, doncs d’això va l’email el Law m’ha enviat un email amb una mini-explicació de la diferència entre un .gif i .png transaparent que amb el seu permís us penjo aquí.
Lo dels png’s és facil. resulta que un gif té un canal de transparència, pero diguessim que es rollo binari, o hi ha color (amb el seu codi) o no. PNG va més enllà, pot haver color i amb una opacitat, de manera que tu pots definir uns bordes més suaus gràcies a que té una opacitat escalada i no en plan “si, no”.
El tema esta que llavors tu pots posar un damunt de qualsevol fons, pero ha de tenir un borde perquè sinó esta acorde amb el fons es veu com el cul, amb png al tenir un percentatge dopacitat queda super fi i queda bé.