Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill...

39
Utveckling för iPhone Kort intro till Martin Nyström [email protected] (och iPod Touch) Tuesday, November 3, 2009

Transcript of Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill...

Page 1: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Utveckling för iPhoneKort intro till

Martin Nyströ[email protected]

(och iPod Touch)

Tuesday, November 3, 2009

Page 2: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Varför iPhone/iPod?

Tuesday, November 3, 2009

Page 3: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Varför iPhone/iPod?

• Många användare - 30 miljoner sålda enheter vs xbox 360 29 miljoner (mars 2009)

Tuesday, November 3, 2009

Page 4: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Varför iPhone/iPod?

• Många användare - 30 miljoner sålda enheter vs xbox 360 29 miljoner (mars 2009)

• Relativt kort utvecklingstid

Tuesday, November 3, 2009

Page 5: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Varför iPhone/iPod?

• Många användare - 30 miljoner sålda enheter vs xbox 360 29 miljoner (mars 2009)

• Relativt kort utvecklingstid

• Bra idé till förtjänst på några veckor

Tuesday, November 3, 2009

Page 6: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Varför iPhone/iPod?

• Många användare - 30 miljoner sålda enheter vs xbox 360 29 miljoner (mars 2009)

• Relativt kort utvecklingstid

• Bra idé till förtjänst på några veckor

• Appstore

Tuesday, November 3, 2009

Page 7: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Varför iPhone/iPod?

• Många användare - 30 miljoner sålda enheter vs xbox 360 29 miljoner (mars 2009)

• Relativt kort utvecklingstid

• Bra idé till förtjänst på några veckor

• Appstore

• Enkelt att börja sälja

Tuesday, November 3, 2009

Page 8: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Varför iPhone/iPod?

• Många användare - 30 miljoner sålda enheter vs xbox 360 29 miljoner (mars 2009)

• Relativt kort utvecklingstid

• Bra idé till förtjänst på några veckor

• Appstore

• Enkelt att börja sälja

• Jätteenkelt att köpa

Tuesday, November 3, 2009

Page 9: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Varför iPhone/iPod?

• Många användare - 30 miljoner sålda enheter vs xbox 360 29 miljoner (mars 2009)

• Relativt kort utvecklingstid

• Bra idé till förtjänst på några veckor

• Appstore

• Enkelt att börja sälja

• Jätteenkelt att köpa

• Bra SDK och dokumentation.Tuesday, November 3, 2009

Page 10: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Vad behövs?

Tuesday, November 3, 2009

Page 11: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Vad behövs?

• Intel-Mac med OS X 10.5.7 eller senare

Tuesday, November 3, 2009

Page 12: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Vad behövs?

• Intel-Mac med OS X 10.5.7 eller senare

• iPhone SDK (gratis)

Tuesday, November 3, 2009

Page 13: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Vad behövs?

• Intel-Mac med OS X 10.5.7 eller senare

• iPhone SDK (gratis)

Tuesday, November 3, 2009

Page 14: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Vad behövs?

• Intel-Mac med OS X 10.5.7 eller senare

• iPhone SDK (gratis)

• iPhone Developer (99$/år) för on-Device testing och för att kunna sälja apps.

Tuesday, November 3, 2009

Page 15: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Vad behövs?

• Intel-Mac med OS X 10.5.7 eller senare

• iPhone SDK (gratis)

• iPhone Developer (99$/år) för on-Device testing och för att kunna sälja apps.

• En iPhone eller iPod Touch

Tuesday, November 3, 2009

Page 16: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

iPhone SDK

iPhone Simulator Instruments

Tuesday, November 3, 2009

Page 17: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Tuesday, November 3, 2009

Page 18: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Tänk på

Tuesday, November 3, 2009

Page 19: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Tänk på

• Snålt med resurser

Tuesday, November 3, 2009

Page 20: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Tänk på

• Snålt med resurser

• Noga med minnesanvändning/läckage

Tuesday, November 3, 2009

Page 21: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Tänk på

• Snålt med resurser

• Noga med minnesanvändning/läckage

• Skriv effektiv kod, men fokusera optimering där den behövs.

Tuesday, November 3, 2009

Page 22: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Tänk på

• Snålt med resurser

• Noga med minnesanvändning/läckage

• Skriv effektiv kod, men fokusera optimering där den behövs.

• Många interaktionsmöjligheter

Tuesday, November 3, 2009

Page 23: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Tänk på

• Snålt med resurser

• Noga med minnesanvändning/läckage

• Skriv effektiv kod, men fokusera optimering där den behövs.

• Många interaktionsmöjligheter

• Håll det simpelt

Tuesday, November 3, 2009

Page 24: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

OpenGL ES

Tuesday, November 3, 2009

Page 25: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

OpenGL ES

• iPhone 2G, 3G och iPod touch stödjer OpenGL ES 1.1

Tuesday, November 3, 2009

Page 26: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

OpenGL ES

• iPhone 2G, 3G och iPod touch stödjer OpenGL ES 1.1

• Saknar stöd för programmerbara shaders

Tuesday, November 3, 2009

Page 27: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

OpenGL ES

• iPhone 2G, 3G och iPod touch stödjer OpenGL ES 1.1

• Saknar stöd för programmerbara shaders

• 3GS och nya iPod har stöd för OpenGL ES 2.0

Tuesday, November 3, 2009

Page 28: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

OpenGL ES

• iPhone 2G, 3G och iPod touch stödjer OpenGL ES 1.1

• Saknar stöd för programmerbara shaders

• 3GS och nya iPod har stöd för OpenGL ES 2.0

• Går att avgöra om stöd finns under körning.

Tuesday, November 3, 2009

Page 29: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Animerade 3D-modeller

Tuesday, November 3, 2009

Page 30: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Animerade 3D-modeller

• Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med tillhörande kod för export/import.

Tuesday, November 3, 2009

Page 31: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Animerade 3D-modeller

• Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med tillhörande kod för export/import.

• md2/obj/rtg?

Tuesday, November 3, 2009

Page 32: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Animerade 3D-modeller

• Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med tillhörande kod för export/import.

• md2/obj/rtg?

• Apple rekommenderar lagring av modeller som statiska arrayer direkt i .h-filer.

Tuesday, November 3, 2009

Page 33: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Animerade 3D-modeller

• Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med tillhörande kod för export/import.

• md2/obj/rtg?

• Apple rekommenderar lagring av modeller som statiska arrayer direkt i .h-filer.

• Slipper ladda och konvertera lagrad data under körning.

Tuesday, November 3, 2009

Page 34: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Animerade 3D-modeller

Tuesday, November 3, 2009

Page 35: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Animerade 3D-modeller

• Perl-skript som tar en serie .obj-filer (wavefront object) och skriver en .h-fil med data lämplig för att ritas ut direkt med glDrawArrays().

Tuesday, November 3, 2009

Page 36: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Animerade 3D-modeller

• Perl-skript som tar en serie .obj-filer (wavefront object) och skriver en .h-fil med data lämplig för att ritas ut direkt med glDrawArrays().

• Exempelprojekt läggs upp på kurshemsidan(?).

Tuesday, November 3, 2009

Page 37: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Animerade 3D-modeller

• Perl-skript som tar en serie .obj-filer (wavefront object) och skriver en .h-fil med data lämplig för att ritas ut direkt med glDrawArrays().

• Exempelprojekt läggs upp på kurshemsidan(?).

• Fel och förbättringar - släng iväg ett mail.

Tuesday, November 3, 2009

Page 38: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Tuesday, November 3, 2009

Page 39: Kort intro till Utveckling för iPhone - KTHAnimerade 3D-modeller • Ett problem när man vill skriva en 3D-applikation (spel?) är att hitta eller skriva ett passande format med

Länkar

iPhone Dev Center: http://developer.apple.com/iphone/Kurs hos Stanford: http://www.stanford.edu/class/cs193p/Färdig 3D-motor: http://oolongengine.com/ Källa till oändlig kunskap: http://www.google.com

Tuesday, November 3, 2009