TNMK024 - Mobilprogrammering

Relevanta dokument
Mobila applikationer. Mobil applikationer. Java ME. Konfigurationer. Grunderna i ME

Nya Medier. Gränssnitt, Interaktivitet och Digital kod

Java: Utvecklingsverktyg, datatyper, kontrollstrukturer

Nya Medier. Gränssnitt, Interaktivitet och Digital kod

Var befinner vi oss? Bakgrund. Vad är Mentombro?

EV3 Roboten. Sida 1 av 13

Bygga kurser för mobila enheter

Instuderingsfrågor och övningar

Roboten. Sida 1 av 11

Viktiga begrepp. Algoritm. Array. Binärkod. Blockprogrammering. Bugg / fel och felsökning. Dataspel. Dator

Tema: Underhållning Teknikspanarna

F: Anslutningsknapp G: Batterihållare H: Laddningsanslutning I: Rörelsesensor/rörelselampa. 12 h

SeniorNet Huddinge Dagens tema: Trådlösa uppkopplingar

Bortom skärmen II. Haptik, ljud och projektstart

Att göra spel med Game Maker. Rum. Grundläggande delar. Gamemaker, dagens föreläsning. Programmeringsmodell

Grafik. För enklare datorsystem

PROJEKT LJUD. KOPIERINGSUNDERLAG Martin Blom Skavnes, Staffan Melin och Natur & Kultur Programmera i teknik ISBN

Kognition crash course

Med process-styrenheten undviker du komplicerade anslutningar och avståndsbegränsning. Njut av kvalitetsmusik - när som helst och var som helst.

SMULTRON. Fredrik Li, Ester, Anders, Jessica, Philip. Malmö Högskola Konst Kultur Kommunikation OOP5 - Mobile Applications IDK 05 - April/Maj 2007

Personsökare RX-300 Bruksanvisning

Läsplattor är gjorda för att läsa på

A. Datorn från grunden

Grunder. Grafiktyper. Vektorgrafik

Föreläsning 2. Operativsystem och programmering

Laboration i datateknik

Föreläsning 10: Gränssnitt och webbdesign

After Effects Lathund

Vad utmärker ett bra användargränssnitt?

TBSK 03 Teknik för Advancerade Datorspel

Ljud och interaktion. Kirsten Rassmus-Gröhn, Avd. för Rehabiliteringsteknik, Inst. för Designvetenskaper

TBSK 03 Teknik för Advancerade Datorspel

Grundläggande programmering DVG A08 & ISG A04. Allmän information. Å vem är jag då. Karlstads Universitet, Johan Öfverberg 1

Detta kommer vi att läsa om nu:

Pulsmätare med varningsindikatorer

Styra olika typer av objekt som animering, video, ljud och Flashfilm

Programmering. Den första datorn hette ENIAC.

n-abler PRO JOYSTICK Handledning

BT-500. Bluetooth Stereo Hörlurar

Grafik. För enklare datorsystem

KOM IGÅNG, UPPDRAG OCH KOMPONENTER

Jabra. Sport Coach. special edition. Bruksanvisning

MINIX NEO A2 Användarguide

3: 21/ Det är tillbehören som förenklar!

JABRA SPORT COACH WIRELESS

Grafiska användargränssnitt i Java

Workshop PIM 2 - PowerPoint

Snabbstartsguide NBW-11604N

Vad är ZOOM? Så är det dock inte!

Interaktiva Bibliotek. Eva Eriksson. IDC Interaction Design Collegium

SÄTT DIG NER, 1. KOLLA PLANERINGEN 2. TITTA I DITT SKRIVHÄFTE.

Högskolan i Halmstad Multimedia och visuell kommunikation Övning 1 Adobe Flash, grundfunktioner & interpolering. Efter övningen förväntas du kunna:

Materialspecifikationer webb 2014

Tor Sterner-Johansson Thomas Johansson Daniel Henriksson

Grafiska pipelinen. Edvin Fischer

SLUTRAPPORT: TEXAS HOLDEM 4 FRIENDS

Lektion 1: Möt Robo! Områden: Robotteknik, ingenjörsteknik mekanisk design

Styrteknik 7.5 hp distans: E-1000 och E-Designer

Fotorealism, animering, SW resurser

JAVAUTVECKLING LEKTION 1

Total överblick för alla behov R-CONTROL ELEKTRONISKA LÅS FÖR HEM OCH FÖRETAG

Upp gifter. c. Hjälp Bengt att förklara varför det uppstår en stående våg.

Webbtjänster med API er

Ljudinteraktion. Kirsten Rassmus-Gröhn, Avd. för Rehabiliteringsteknik, Inst. för Designvetenskaper

Digitala bilder & Fotografering med Digitalkamera

Tips på AKK-appar. Jag tycker om dig! Appar med symboler, text och ljud för personer som behöver AKK-stöd för uttryck och förståelse

Objektorienterad programmering med Java Swing: Händelser, lyssnare och applets

Game of 40. Regler och om sidan är in princip samma sak. Det som skiljer dem åt är att de inte har samma text.

JAVA 2 MICRO EDITION - FÖR SVERIGE I MOBILEN?

Objektorienterad programmering i Java I

Innehåll. Styrdon (ej i boken) Fitts lag (sidan ) Natural user interfaces. Kap 6.2.9, , Kap

Beskrivning av gesällprov RMI Chat Mikael Rydmark

Giraffen & ballongen

IRONCAD KONFIGURATIONER

Department of Information Technology Digitala projekt. SuperKull. Daniel Öhman Alexander Persson

Teknik, principer, metaforer och modeller Lars Oestreicher

MANUAL CHRONO COMAI Comai AB erbjuder kvalificerade anpassningsbara och Comai AB

Trådlös, tillgänglig fri!

QosmioEngine För avancerad video

Model View Controller. Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016

ATT ARBETA MED VEKTORGRAFIK

Nu gör den interaktiva leken sitt intåg.

SCENER. Att ändra i en scen

AWARE! DESIGN OPEN 2016

Människa-datorinteraktion. Innehåll. Forts. Teknik, principer, metaforer och modeller Bengt Sandblad

1420E ID Markörsökare

NT-1 Bluetooth Stereo Headset med NFC

Få ditt skrivbord att vibrera med musik

Wittkopp. Primor 2000 Level 5

Tynker gratisapp på AppStore

Programmering eller Datalogiskt tänkande

Innehålls förteckning

Universe Engine Rapport

1. PRESENTATION SÄKERHETSFÖRESKRIFTER Säkerhetsföreskrifter Användningsvillkor BESKRIVNING AV INSTRUMENTET...

Digitalitet. Kontinuerlig. Direkt proportionerlig mot källan. Ex. sprittermometer. Elektrisk signal som representerar ljud.

Manuell SMARTCD.G

TSBK 10 Teknik för avancerade datorspel Fö 9: Nätverk, Peter Johansson, ISY

Tips på AKK-appar. Jag tycker om dig! Appar med symboler, text och ljud för personer som behöver AKK-stöd för uttryck och förståelse

Manual för grunderna i PowerPoint Sara Eriksson

Avancerad Interaktionsdesign

Transkript:

TNMK024 - Mobilprogrammering Daniel Sundberg 2007

Föreläs are Daniel Sundberg Medieteknik 2000-2005 Exjobb Silicon Graphics Inc. Designing and Implementing a 3D User Interface Forskaringenjör NVIS 2005-2007 Mjukvaruarkitekt VION Solutions AB

Föreläs ningar Intro till Java för mobila enheter MIDP, CLCD, JSR, Mobile Processing etc. Animeringar, sprites etc. Blåtandskommunikation i praktiken

Kort om Java Platformsoberoende Compile once, run everywhere 1. Javakod (.java) 2. Kompilator (javac) 3. Bytekod (.class) 4. Virtuell Maskin (java) 5. Interpreteras till maskinkod 6. Applikation körs

Java ME (Micro Edition) Applikationsplatform för mobila enheter Designat för att köras på många typer av enheter Mobiler, PDA, digitalboxar, brödrostar etc. Består av olika komponenter Java Community Process (JCP)

JCP och JS R Stort community som tar fram s.k. Java Specification Requests (JSR) Formella dokument för teknologier som läggs till i Java platformen 300+ JSRer ME (76 JSRs) SE/EE (212 JSRs) Exempel är JSR 118, definitionen för MIDP 2.0

J2ME paket J2ME är uppbyggt av olika API paket Olika pakettyper Konfigurationer Profiler Valbara paket Vi är intresserade av sammansättningen av MIDP och CLDC samt Bluetooth

MIDP och CLDC Mobile Information Device Profile MIDP 1.0 (JSR 37) MIDP 2.0 (JSR 118) Connected Limited Device Configuration CLDC 1.1 (JSR 139) Java API for Bluetooth (JSR 82)

Proces sing Programmerings IDE Prototypning Wrapper kring Java Låg inlärningskurva Vanlig Java-kod

Mobile Proces s ing Lika som Processing Java ME Korta utvecklingstider Allt klart Tuta och köra

Mobile Proces s ing Wrappers för snabb start Full access till alla java APIer Java's emulator för testning JAR paketering

Länkar APIer http://java.sun.com/javame/reference/apis.jsp Java Specification Requests http://jcp.org Processing http://www.processing.org http://mobile.processing.org

Mobilprogrammering Animeringar, s prites m.m.

Innehåll Animera objekt Sprites Lager Tilade lager Bakgrunds parallax

Animering Animera Samlingsnamn för rörliga bilder, skapade genom fotografering av teckningar eller objekt (dockor, lerfigurer, silhuetter e.d.) eller i dator. En filmkamera tar en eller ett fåtal bildrutor av varje teckning eller rörelsefas. Då filmen visas med normal hastighet flyter de enskilda bilderna samman till en kontinuerlig rörelse.

Animera objekt Flytta positionen på objekt mellan renderingar Förändra objekt mellan renderingar Målet oftast att skapa en kontinuerlig rörelse

Animera Exempel

S prite Från början en metod för att i hårdvara rendera multipla objekt till skärmbufferten Datorerna blev snabbare, kunde lösa samma problem generiskt, namnet kvar Generellt menas 2D bild som integreras i en större scen Oftast har en sprite många bildrutor och kan animeras

S prite Inte nödvändigtvis en lågupplöst pixlad bild i datorspel Används ofta även som effekter i 3D-spel, filmer etc. Billigt sätt att skapa effekter I 3D är en sprite alltid en billboard, objekt som alltid är riktat mot kameran

S prites i MIDP Inbyggt stöd för sprites i MIDP Håller koll på: Bildrutor Animering Kollision Definiera animations mönster

S prites i MIDP

S prites i MIDP setframe(int) nextframe() prevframe()

S prites i MIDP Definiera special sekvenser för mer kontroll på animationen

S prites Exempel

Lager Smidigt sätt att hantera multipla objekt Separera bakgrund, objekt etc. MIDP har en lagerhanterare

TiledLayer i MIDP Bygga större bilder av mindre bitar, tiles Sparar minne då man slipper att lagra jättestora bilder Enkelt att göra olika designer

TiledLayer

TiledLayer

TiledLayer - Animering

TiledLayer - Exempel Några tiles från SuperMario i Mobile Processing

TiledLayer Exempel

S crollande bakgrund Enkelt sätt att skapa en värld som är större än skärmen Använd med fördel TiledLayers Bakgrunden kan loopas för en oändlig värld Daniel Sundberg 2007

S crollande bakgrund Exempel

Parallax s crollning En variant av scrollande bakgrunder Byggs upp av olika lager Förgrund... Bakgrund Rör sig med olika hastigheter för att skapa en djupkänsla

Parallax s crollning

Parallax s crollning

Parallax S crollning Exempel

Parallax s crolling Att tänka på Hastigheter mellan lager Ordningen på lagren

Allt-i-ett Resultat

Mobilprogrammering Feedback/Återkoppling

Återkoppling/Feedback Principen att föra tillbaka signaler från ett system och låta denna information i sin tur påverka systemet. Används inom användargränssnitt för att t.ex. påkalla fokus Används inom spel för att t.ex. förstärka upplevelsen

Återkoppling exempel Tända lampan med hjälp av strömbrytaren, vilken feedback ges? Taktil, vi känner att knappen tryckts in Hörbar, vi hör att strömbrytaren slår om Visuell, ljuset tänds/släcks...

Återkoppling i gränssnitt Använder ofta signaler för att varna för t.ex. låg batterinivå etc. Blinkande fönster Mobiltelefon har olika typer av signaler för olika typer av händelser

De 5 s innena Syn Hörsel Smak Lukt Känsel

Mes t relevanta för oss Syn Hörsel Känsel

S yn Kroppens förmåga att upptäcka och tolka elektromagnetiska vågor i det synliga bandet (350-750 nm, ljus) Intesiteten, antal fotoner Färg, fotonernas frekvens (våglängd)

S yn Sinne med störst bandbredd En bild säger mer än 1000 ord Approx. bandbredd för näthinnan 9 Mbit/s Väldigt fokuserat område, inga ögon i nacken

Hörs el Kroppens förmåga att uppfatta och tolka tryckförändringar i det omslutande mediet (luft, vatten, etc) Tryckförändringar uppfattas av trummhinnan Extremt höga samt låga frekvenser uppfattas också i viss mån av det taktila sensorsystemet

Hörs el 360 grader Indirekt, behöver inte fokusera på ljudet för att uppfatta det Dock bara ta upp direkt infomation från ett ljud i taget

Käns el Taktil återkoppling, uppfattas av känselceller t.ex. i fingertopparna Haptisk återkoppling, uppfattas av muskler och leder

Relevanta typer av återkoppling Visuell Hörbar Haptisk

Visuell återkoppling Informerar användaren om händelser Timglaset Pop-Up rutor Progress bar Nytt meddelande på mobilen visas ofta som ett litet brev Kräver att vi tittar på displayen

Hörbar återkoppling Typer Literell, Realistisk Abstrakt Metafor Kvitteringsljud

Literära ljud Ljud som efterliknar den verkliga händelsen Explosion Billjud, gas, broms, däckskrik Pappersprassel då papperskorgen töms Lätt att applicera som effekter till ett spel men svårt att applicera på ett användargränssnitt

Abs trakta ljud Så kallade Earcons Utvecklat delvis för synskadade Bygger på melodiska inslag Begränsat antal toner Rytm, pulser, slingor Kallas ofta musikaliskt gränssnitt

Metaforis ka ljud Ljud som försöker beskriva händelsen med en liknelse Exempel: Skrollist eller slider Pitchen (frekvensen) på ljudet återspeglar positionen Hög frekvens långt upp Låg frekvens långt ner

Aktions - eller kvitterings ljud Typ av ljud som ofta förknippas med kvittering av att något händer Knapptryckning, minimera fönster, avsluta datorn etc. Både medvetet designade eller på grund av kontruktion Ex. planerade ljud knappljudet ( pipen ) på mobiler Ex. oplanerade ljud, elektroniska lås som klickar när de låses upp

Haptis k återkoppling Används ofta i spelkotroller genom vibration Mer avancerade rattar och joysticks i form av Force-feedback Mer avancerad hårdvara som t.ex. SensAble Phantom

Vibration Visat sig mycket viktig för telefoner med touchscreen, ger kvittens på att något klickats på Tillgänglig i mobiltelefonen via Java Enkel och okomplex men ändå effektfull Varieras genom att t.ex. ändra längden på vibrationen eller att pulsa den samma

S ummering Mobiltelefonens fysiska egenskaper Visuella återkoppling Skärm Hörbar återkoppling Högtalare Haptisk återkoppling Vibrator

S ummering Hörbar återkoppling Förstärker det visuella Obegränsat med variationer (toner, ljudspår, effekter, etc.) Haptisk återkoppling Förstärker upplevelsen Inte lika dynamisk som ljud men det räcker