Až bude na podzim vydán iOS 7, dostaneme do svých jablečných zařízení kupu nových funkcí. Kromě zcela přepracovaného, někdy až kontroverzního, vzhledu nám Apple nabízí zcela nové paradigma uživatelského požitku. Zdá se, že Apple chce svůj mobilní systém tímto razantním krokem připravit pro následující dekádu.
Mezi novinkami figuruje tzv. paralaxní efekt. Pokud bych měl citovat Wikipedii, paralaxa (z řeckého παράλλαξις (parallaxis) znamenající „změna“) je úhel, který svírají přímky vedené ze dvou různých míst v prostoru k pozorovanému bodu. Jako paralaxa se také označuje zdánlivý rozdíl polohy bodu vzhledem k pozadí při pozorování ze dvou různých míst. Čím dále je pozorovaný předmět od pozorovacích míst, tím je paralaxa menší. Většině z vás teď zřejmě naskočila husí kůže při vzpomínce na školní lavice a nudné hodiny fyziky.
V praxi to jednoduše znamená, že s trochou šikovného programování se displej promění v něco víc. Najednou se nejedná a pouhopouhou dvoudimenzionální plochu s maticemi ikon a ostatními prvky uživatelského prostředí, ale o skleněný panel, skrze který je uživatel schopen při natáčení zařízení vidět trojrozměrný svět.
Perspektiva a paralaxa
Základní princip toho, jak vytvořit funkční paralaxní efekt na dvojdimenzionálním displeji je poměrně jednoduchý. Protože světlo prochází okem do jednoho jediného bodu, musel se mozek naučit rozpoznávat velikost objektů vzhledem k úhlu mezi jejich okraji. Výsledek je ten, že bližší objekty se zdají být velké, zatímco objekty v dálce se jeví malé.
To jsou základy vnímání perspektivy, o kterých každý z vás jistě někdy slyšel. Paralaxa je v tomto kontextu iOS zdánlivý pohyb mezi těmito objekty při pohybu kolem nich. Například když jedete autem, bližší objekty (stromy u krajnice) se hýbou rychleji než ty vzdálenější (kopce v dáli), i když všechny stojí na svém místě. Vše mění svá místa jinak při stejné rychlosti.
Spolu s několika dalšími fyzikálními triky hraje perspektiva a paralaxa velmi významnou roli ve vnímání světa kolem nás, díky čemuž jsem schopni setřídit a pochopit nejrůznější vizuální vjemy, které naše oči zachytí. Mimo to se fotografové s vnímáním perspektivy rádi pohrávají.
Z raket do telefonů
V iOS je paralaxní efekt zcela simulován samotným operačním systémem, s malou pomocí technologie, původně vyvinuté pro nosné rakety. V útrobách nejnovějších iOS zařízení se nachází vibrační gyroskopy, zařízení menší než lidský vlas, které se při vystavení elektrickému náboji rozkmitají na danou frekvenci.
Jakmile začnete se zařízením pohybovat po kterékoli za tří os, začne se celý mechanizmus vzpírat vůči změně orientace kvůli prvnímu Newtonovu zákonu, nebo-li zákonu setrvačnosti. Tento jev umožňuje hardwaru změřit rychlost a směr, kterým je zařízení natáčeno.
K tomu přidejme akcelerometr, jenž dokáže detekovat orientaci zařízení, a získáváme ideální souhru senzorů k velmi přesnému zjištění potřebných dat pro vytvoření paralaxního efektu. iOS pomocí nich dokáže jednoduše spočítat relativní pohyb jednotlivých vrstev uživatelského prostředí.
Paralaxa pro všechny
Problematiku paralaxy a iluzi hloubky lze vyřešit přímočaře díky matematice. Jediné co musí software umět, je zorganizovat obsah do množiny rovin a následně jimi pohybovat v závislosti nad jejich domnělé vzdálenosti od očí. Vyústěním bude realistické vykreslení hloubky.
Pokud jste sledovali WWDC 2013 nebo úvodní video k iOS 7, byl paralaxní efekt názorně ukázán na hlavní obrazovce s ikonami. Ty při pohybu iPhonu jakoby plavou nad pozadím, což vytváří umělý dojem z prostoru. Dalším příkladem je jemný pohyb otevřených tabů v Safari.
Nicméně přesné detaily jsou prozatím zahaleny rouškou tajemství. Zřejmé je jen jedno – Apple zamýšlí protkat paralaxu napříč celým systémem. To může být koneckonců důvod, proč iOS 7 nebude podporována na iPhonu 3GS a iPadu první generace, jelikož ani jedno ze zařízení nedisponuje gyroskopem. Dá se očekávat, že Apple uvolní API pro vývojáře třetích stran, aby mohli taktéž těžit z třetího rozměru, to vše bez velké spotřeby energie.
Genialita nebo pozlátko?
Zatímco většinu vizuální efektů iOS 7 lze uceleně popsat zprostředkovaně, paralaxa vyžaduje vlastní zkušenost. Můžete shlédnout desítky videí, ať už oficiálních nebo jiných, ale rozhodně paralaxní efekt nehodnoťte bez vlastního vyzkoušení. Jinak budete mít dojem, že se jedná pouze o efekt „na oko“.
Avšak jakmile se vám dostane zařízení s iOS 7 do vlastních rukou, spatříte za displejem další rozměr. To je něco, co se velmi obtížně popisuje slovy. Displej už není jen plátnem, na které jsou vykreslovány aplikace zobrazující imitace reálných materiálů. Ty jsou nahrazeny vizuálními efekty, které budou syntetické i realistické zároveň.
Je víc než pravděpodobné, že jakmile vývojáři začnou využívat paralaxní efekt, budou jím aplikace přehlceny, protože se každý bude snažit najít ten správný způsob použití. Situace se však zanedlouho ustálí, stejně jako u předchozích verzí iOS. Zároveň však světlo světa spatří aplikace zcela nové, o jejichž možnostech si dnes můžeme jen zdát.
otázkou je, jestli, když uvolní API pro vývojáře třetích stran, to nepůjde využít rychle pro konkurenci…. ?! To by byla celkem škoda! :(
Paralax live wallpaper bol vydaný pre android pár dní po predstavení ios7. Control center asi po týždni tuším.
Paralax Live wallpaper byl vydaný dlouhou dobu před iOS 7 :-) Když jsem měl LG Optimus 3D tak mě bylo líto, že 3D používal jenom v určitých věcech tak jsem si tam tenkrát dal živou tapetu která simolovala 3D efekt :-) Pod Paralaxní Barierou se skrývá i technologie kterou měl LG Optimus 3D a HTC EVO 3D a teď i pár new TV. Původní výrobce této Technologie pro 3D bez brýly bylo BMW v palubních počítačích pro to aby řidič mohl koukat na navigaci a spolujezdec na film. Jinak v iOS 7 se tento efekt objevuje celkem často – na ploše, v safari, na zamknuté ploše při použítí panoramatických fotek, při snížení hlasitosti taktéž. Jenom mě štve že vymazávají poměrně cool funkce v jednotlivých betách. Průhledná klávesnice ve zprávách je pryč, průhledná notifikační lišta pryč….
API pro vývojáře třetích stran na to velký vliv nemá. Konkurenční systémy toto API použít nemůžou, takže by zbývalo stejně jen reverzní inženýrství. A to u takového dobře zdokumentovaného* efektu nemá moc smysl.
*teď nemyslím, že někde naleznete přesný kód z iOS, ale paralaxe je podobně jako perspektiva celkem známý a prozkoumaný jev.
Jako vyvojar vazany NDA nemohu rici, ze iOS 7 obsahuje Motion Effects API. A uz vubec nemuzu rict, ze jsem to pouzival hned po vydani prvni bety a ze to je parada.
:D
Kazdopadne pristup k akcelerometru i gyroskopu vzdy vyvojari meli, proto tam prece je. Tady je vyhoda, ze to Apple … ehm … mozna efekty napoji jednoduse na kazdy UIView, ktery muze mit promenny jakykoliv parametr (velikost, pozici atd) na zaklade rotace a pohybu zarizeni.
Naprosto plne API pro tyto efekty uz davno vydane tedy je… To bych rekl, kdybych o tom smel mluvit :)
Pamatuju si že v nějaké betě iOS6 menil posuvník hlasitosti odlesky v závyslosti na naklopení zařízení a v ostré verzi nic nebylo.
Ja uz mam par mesicu iOS 7 betu, ale pokud si pamatuju spravne, tak tento efekt normalne v iOS 6.1 ostre verzi je. Ale mozna se pletu, opravdu to nemuzu nikde overit, vsude mam iOS 7.
Sorry ale napisat cely clanok o pohyblivom pozadi – vidiet ze je uhorkova sezona.
Spíš je vidět, že nevíš oč jde, že to není jen obyčejné pohyblivé pozadí.
Pěkný článek plný konkrétních informací.
Super článek. Čekal jsem něco o paralaxu už dávno když to Apple použil. Maůže to mít spostu nových možností.
Pěkný článek
Už z toho videa to vypadá nádherně a nedovedu si zatím představit jak úžasný to bude, až to budu mít ve svém iPhonu. Nádhera!
Faktem je, ze Android to ma uz davno, ve forme aplikaci, a nikoho to nejak moc nebere.
Na iPhonu 4 fungovat nebude…
Já se bojím, co na to řekne baterka, tohle je pěkná porce výpočtů navíc.
Čo môže byť na hodine fyziky nudné ?
Veď fyzika patrí k najzaujímavejším vedám!!!
Článek je velmi zajímavý, některé věci jsou však nepřesně vysvětleny. Předně, paralaxa je spíše úhel mezi úsečkami spojujícími dvě různá místa pozorování a objekt, přičemž je vždy menší přímého úhlu (Wiki je v tomto poměrně nepřesná – u úhlu dvou přímek se těžko specifikuje, o jaký úhel jde). A potom k Newtonově zákonu: pokud začneme s telefonem pohybovat, udělíme mu zrychlení. O zrychlení ale přeci zákon setrvačnosti vůbec nepojednává. Princip, na němž spočívá tato funkce, spíše vychází z vlastností neinerciálních vztažných soustav, jimiž se sice Newton také zabýval, nikolivěk však v rámci svého prvého pohybového zákona.
„A potom k Newtonově zákonu: pokud začneme s telefonem pohybovat, udělíme mu zrychlení. O zrychlení ale přeci zákon setrvačnosti vůbec nepojednává.“
Nerozumim, jak tato argumentace dokazuje ze nejde o zakon setrvacnosti.
Co si pamatuju, tak gyroskop pracuje na principu zmeny momentu hybnosti, ktera generuje silu. A to je zavisle na momentu setrvacnosti. Takze jde podle me jak o zakon setrvacnosti tak o zakon sily pro rotujici soustavu.
Nepleťte si akcelerometr s gyroskop. Akcelerometr zaznamenává díky setrvačnosti zrychlení předmětu. Gyroskop je strvačník umístěný v trojosém rotoru, díky čemuž tento setrvačník nemění polohu vůči zemi při jakémkoliv natočení celého přístroje.
Sečteno podtrženo – aklcelerometr vnímá pohyb, zatímco gyroskop polohu (natočení). ;)
Dekuji za upozorneni, ale opravdu si ty dva nepletu. Paralaxa totiz nema s akcelerometrem nic spolecneho, ten ovlada gyroskop.
Gyroskop, ktery popisujete ve skutecnosti v iPhonu neni. Tam je mechanicka mrizka, ktera se deformuje rotaci, nic se tam tedy samo od sebe netoci (tak funguje klasicky gyroskop, napr. popsany na wikipedii).
Ovsem tato deformace je zpusobena opravdu rotacni setrvacnosti, takze… jaksi nechapu, kde jste vzal, ze si pletu akcelerometr a gyroskop (o akcelerometru vubec rec nebyla).
Netvrdím, že paralaxa má cokoliv společného s akcelerometrem ;). Gyroskop nefunguje na principu změny hybnosti – to by totiž znamenalo, že reaguje pouze na zrychlení (p=m*v). Změna hybnosti by tedy (za předpokladu neměnné hmotnosti) znamenala změnu rychlosti – zrychlení. Gyroskop nicméně reaguje i na změnu polohy při rovnoměrném přímočarém pohybu. Setrvačnost se však uplatňuje na tělese setrvačníku (ať už je reprezentován klasickým těžkým kolem nebo mřížkou).
Jinak s Vámi samozřejmě souhlasím v tom, že prohlášení Martina Hájka o prvním pohybovém zákoně je jaksi bezzubé. Veličina zrychlení v tomto zákonu sice přímo nefiguruje, nicméně ve své podstatě odpovídá na otázku: proč je zrychlení zaznamenatelné i v rámci inerciální vztažné soustavy…
Závěrem bych rád poznamenal, že fyzika je krásná a nikdy jsem se na ní nenudil :D
„Gyroskop nicméně reaguje i na změnu polohy při rovnoměrném přímočarém pohybu.“
Tomu vubec nerozumim :) Jak muze cokoliv reagovat na pohyb pri rovn. prim. pohybu? Neodporovalo by to rovnosti vsech inercialnich vztaznych soustav?
Ale je uz po pulnoci :D Tak mi to mozna uz nemysli.
Až na to že pokud to někde v iOS 7 je, tak jen na úvodní obrazovce. Jinde jsem si toho opravdu nevšimnul. Takže bych to s tou spotřebou baterie neviděl černě. Ostatně výdrž iOS 7 oproti iOS 6 je skoro stejná né-li lepší (beta5)
Pak napr. v Safari tabech.
i na uzamčené obrazovce se animovaná tapeta pohybuje s použitím této „technologie“ nebo jak to nazvat
Super článek!
Aplikace aero je ted zdarma
Obsahuje vyse zmineny efekt :)