SlideShare a Scribd company logo
Universitatea “Al. I. Cuza” Iași, Facultatea de Informatică




      Concepte privind dezvoltarea jocurilor
                   electronice


Alexandru Angelescu
Sabin-Corneliu Buraga

                Conferinţa Naţională de Interacţiune Om-Calculator 2011
Concepte privind dezvoltarea jocurilor electronice




                   Industria jocurilor electronice

• vânzări în 2010 - 18.58 miliarde $
• iulie 2011 (707 milioane $) - cele mai slabe încasări
     lunare din ultimii 4 ani
• la sfârșitul lui 2010, Call of Duty Black Ops
     înregistrează vânzări de 1 miliard $ în primele 6
     săptămâni de la lansare
• 1 septembrie 2011 - Call of Duty Black Ops totalizează
     18 milioane de DLC-uri vândute

                                                           2
Concepte privind dezvoltarea jocurilor electronice




                   Industria jocurilor electronice

• dorința de a repeta succesul unui titlu anterior -> lipsă
     de inovație în design
•    firmele de distribuție nu își asumă riscuri inutile
• un joc cu istoric de succes garantează investiția
• multe jocuri independente create de studiouri mici nu
     primesc contracte de publicare -> canalele de
     distribuție digitală
•    mișcarea indie games

                                                              3
Concepte privind dezvoltarea jocurilor electronice




• soluția Microsoft pentru dezvoltatorii de indie games
• lansat în decembrie 2006, împreună cu Xbox LIVE
     Community Games (Xbox LIVE Indie Games)
• XNA - prescurtare de la “XNA's Not Acronymed” (XNA nu
     este un acronim)
• XNA reprezintă un toolkit de dezvoltare gratuit ce
     folosește .NET si C#


                                                          4
Concepte privind dezvoltarea jocurilor electronice




• oferă toate instrumentele necesare dezvoltării unui joc
• incapsulează toate aspectele legate de producția unui
     joc într-un singur sistem accesibil
• extinde Visual Studio (sau C# Express Edition)
• este disponibil gratuit pe portalul App Hub (fostul XNA
     Creator’s Club)
• periodic este adăugat conținut suplimentar (tutoriale,
     mostre de cod etc.)
                                                            5
Concepte privind dezvoltarea jocurilor electronice




• jocurile create cu XNA pot rula pe:
  • platforma Windows
  • consola Xbox 360
  • dispozitivele Zune
  • terminalele Windows Phone 7
• permite publicarea jocurilor create prin intermediul
     serviciului Xbox LIVE Marketplace


                                                         6
Concepte privind dezvoltarea jocurilor electronice




                    Structura framework-ului XNA

                 Jocuri         Starter Kits           Cod                Conținut        Componente




                 Extended
                 Framework            Modelul aplicației                        Content Pipeline




                 Core
                                Graphics          Audio          Input            Math            Storage
                 Framework




                 Platformă          Direct3D           XACT                XINPUT           XContent




                          Legendă      Oferit de XNA      Creat de utilizator        Comunitate




                                                                                                            7
Concepte privind dezvoltarea jocurilor electronice




                                   Starter Kits

• Jocuri “complete”
 - pot reprezenta punctul de
      plecare pentru creațiile
      proprii
  -   sunt însoțite de
      documentație și tutoriale
  - sunt ușor de folosit

                                                     8
Concepte privind dezvoltarea jocurilor electronice




• creat pentru a ilustra potențialul framework-ului XNA
• reprezintă un simulator de zbor “arcade” plasat în
     timpul celui de-al Doilea Război Mondial



    Prezentare video - disponibilă online pe YouTube.com




                                                           9
Concepte privind dezvoltarea jocurilor electronice




• modul Campaign oferă o experiență single player
     dinamică
•    2 campanii a câte 4 misiuni cu obiective variate
• 10 tipuri de avioane cu diferite caracteristici, modelate
     după aparate de zbor reale
• 3 grade de dificultate: pilot amator, experimentat sau
     as al zborului


                                                           10
Concepte privind dezvoltarea jocurilor electronice




• fiecare jucător își crează un profil de pilot care va
     memora performanțele sale (acuratețea tirului,
     numărul de inamici doborâți etc.)
• îndeplinind misiuni și obiective, jucătorul câștigă
     puncte de experiență (XP), primește un nou grad
     militar și astfel poate debloca noi aparate de zbor
• jucătorul primește Upgrade Points, ce vor servi la
     cumpărarea unor îmbunătățiri pentru fiecare avion

                                                           11
Concepte privind dezvoltarea jocurilor electronice




• progresul jucătorilor este marcat prin dobândirea de
     medalii și îndeplinirea unor obiective (achievements)
•    sistem asemănător cu Xbox 360 Achievements sau
     PlayStation 3 Trophies



• sistemele de recompensare a jucătorului aduc un plus
     de amuzament și mențin ridicat interesul față de joc

                                                             12
Concepte privind dezvoltarea jocurilor electronice




• componenta multiplayer permite confruntarea
     împotriva unui alt jucător uman în mod Split Screen




                                                           13
Concepte privind dezvoltarea jocurilor electronice




• folosește Crimson Engine, un motor de joc special
    creat, format din:
   - motorul grafic (rendering engine)
   - sistemul de administrare a stării jocului (game state
       management system)
   - motorul fizic (physics engine)
   - logica aplicației (scenariile misiunilor, IA)
   - sistemul de memorare a datelor (profiluri, misiuni)
                                                             14
Concepte privind dezvoltarea jocurilor electronice




• implementează arhitectura MVC (Model View
        Controller)
•       structură compartimentată pentru a obține:
    -    extensibilitate
    -    robustețe
    -    flexibilitate
    -    reutilizarea componentelor

                                                     15
Concepte privind dezvoltarea jocurilor electronice




• teren 3D generat dintr-un height map, optimizat
     folosind tehnica quadtree
•    pentru un grad ridicat de realism, terenul beneficiază
     de implementarea tehnicilor terrain smoothing,
     multitexturing și normal mapping
• iluminare difuză, reflectivă și ambientală
• umbre ce răspund la iluminarea dinamică

                                                              16
Concepte privind dezvoltarea jocurilor electronice




•    întinderi de apă cu efecte de reflecție și refracție
•    billboarding pentru vegetație și nori volumetrici
•    sisteme de particule (dâre de fum, flăcări, explozii)
•    condiții meteorologice (ceață, ploaie, zăpadă) cu
     parametri variabili (intensitate, viteză de cădere)
• modele 3D Google SketchUp, optimizate pentru efecte
     de transparență și componente în mișcare

                                                             17
Concepte privind dezvoltarea jocurilor electronice




                                                     18
Concepte privind dezvoltarea jocurilor electronice




• direcții viitoare de dezvoltare - grafică
 - vizualizarea pagubelor produse asupra unui avion
       (fragmentații ale diverselor componente)
   - creșterea dimensiunilor terenului
   - diversificarea tipurilor de teren și al obiectelor de
       decor (vegetație, clădiri, tipuri de nori)
   - mai multe efecte speciale (trasoare, așchii și
       fragmente la impactul proiectilelor)

                                                             19
Concepte privind dezvoltarea jocurilor electronice




• direcții viitoare de dezvoltare - single player
 - mai multe misiuni în cadrul celor două campanii
 - un fir narativ mai bine conturat
 - mai multe tipuri de avioane
 - diversificarea obiectivelor misiunilor
 - introducerea de obiective secundare opționale



                                                     20
Concepte privind dezvoltarea jocurilor electronice




• direcții viitoare de dezvoltare - multiplayer
 - adăugarea modului de joc în rețea (reunirea a mai
       mult de doi jucători simultan în aceeași partidă)
   - crearea unei aplicații server care să gestioneze
       derularea partidelor și memorarea profilurilor
       utilizatorilor
   - vizualizarea și compararea statisticilor jucătorilor și
       crearea de clasamente la nivel global

                                                               21
Concepte privind dezvoltarea jocurilor electronice




                                    Întrebări?




                                                     22

More Related Content

Viewers also liked

Rute cu ASP.NET MVC
Rute cu ASP.NET MVCRute cu ASP.NET MVC
Rute cu ASP.NET MVCEnea Gabriel
 
C# Sharp Mapa Conceptual
C# Sharp Mapa ConceptualC# Sharp Mapa Conceptual
C# Sharp Mapa ConceptualFidias Alfredo
 
Web04 Semantic Web: Managementul datelor RDF
Web04 Semantic Web: Managementul datelor RDFWeb04 Semantic Web: Managementul datelor RDF
Web04 Semantic Web: Managementul datelor RDF
Sabin Buraga
 
Introducere în ASP.NET MVC prin exemple
Introducere în ASP.NET MVC prin exempleIntroducere în ASP.NET MVC prin exemple
Introducere în ASP.NET MVC prin exempleEnea Gabriel
 
Ce înseamnă să fii dezvoltator Web
Ce înseamnă să fii dezvoltator WebCe înseamnă să fii dezvoltator Web
Ce înseamnă să fii dezvoltator Web
Sabin Buraga
 
Instrumente optice luneta ( fizica )
Instrumente optice   luneta ( fizica )Instrumente optice   luneta ( fizica )
Instrumente optice luneta ( fizica )LUNGUFLORIN
 
Adn vindecare-si-iluminare
Adn vindecare-si-iluminareAdn vindecare-si-iluminare
Adn vindecare-si-iluminare
Frimu Cristian
 
Autoaparare psihica
Autoaparare psihicaAutoaparare psihica
Autoaparare psihicaNicu Barbi
 
Alfabetul corpului-uman
Alfabetul corpului-umanAlfabetul corpului-uman
Alfabetul corpului-uman
Stenberger Ianco
 
David baldacci-puterea-absoluta-v1-0
David baldacci-puterea-absoluta-v1-0David baldacci-puterea-absoluta-v1-0
David baldacci-puterea-absoluta-v1-0Nicu Barbi
 
Albert leprince-undele-gandului
Albert leprince-undele-ganduluiAlbert leprince-undele-gandului
Albert leprince-undele-gandului
iuliana militaru
 

Viewers also liked (14)

Rute cu ASP.NET MVC
Rute cu ASP.NET MVCRute cu ASP.NET MVC
Rute cu ASP.NET MVC
 
C# Sharp Mapa Conceptual
C# Sharp Mapa ConceptualC# Sharp Mapa Conceptual
C# Sharp Mapa Conceptual
 
Web04 Semantic Web: Managementul datelor RDF
Web04 Semantic Web: Managementul datelor RDFWeb04 Semantic Web: Managementul datelor RDF
Web04 Semantic Web: Managementul datelor RDF
 
Introducere în ASP.NET MVC prin exemple
Introducere în ASP.NET MVC prin exempleIntroducere în ASP.NET MVC prin exemple
Introducere în ASP.NET MVC prin exemple
 
Curs c#
Curs c#Curs c#
Curs c#
 
Ce înseamnă să fii dezvoltator Web
Ce înseamnă să fii dezvoltator WebCe înseamnă să fii dezvoltator Web
Ce înseamnă să fii dezvoltator Web
 
Curs2-POO
Curs2-POOCurs2-POO
Curs2-POO
 
Instrumente optice luneta ( fizica )
Instrumente optice   luneta ( fizica )Instrumente optice   luneta ( fizica )
Instrumente optice luneta ( fizica )
 
Carte
CarteCarte
Carte
 
Adn vindecare-si-iluminare
Adn vindecare-si-iluminareAdn vindecare-si-iluminare
Adn vindecare-si-iluminare
 
Autoaparare psihica
Autoaparare psihicaAutoaparare psihica
Autoaparare psihica
 
Alfabetul corpului-uman
Alfabetul corpului-umanAlfabetul corpului-uman
Alfabetul corpului-uman
 
David baldacci-puterea-absoluta-v1-0
David baldacci-puterea-absoluta-v1-0David baldacci-puterea-absoluta-v1-0
David baldacci-puterea-absoluta-v1-0
 
Albert leprince-undele-gandului
Albert leprince-undele-ganduluiAlbert leprince-undele-gandului
Albert leprince-undele-gandului
 

Concepte privind dezvoltarea jocurilor electronice

  • 1. Universitatea “Al. I. Cuza” Iași, Facultatea de Informatică Concepte privind dezvoltarea jocurilor electronice Alexandru Angelescu Sabin-Corneliu Buraga Conferinţa Naţională de Interacţiune Om-Calculator 2011
  • 2. Concepte privind dezvoltarea jocurilor electronice Industria jocurilor electronice • vânzări în 2010 - 18.58 miliarde $ • iulie 2011 (707 milioane $) - cele mai slabe încasări lunare din ultimii 4 ani • la sfârșitul lui 2010, Call of Duty Black Ops înregistrează vânzări de 1 miliard $ în primele 6 săptămâni de la lansare • 1 septembrie 2011 - Call of Duty Black Ops totalizează 18 milioane de DLC-uri vândute 2
  • 3. Concepte privind dezvoltarea jocurilor electronice Industria jocurilor electronice • dorința de a repeta succesul unui titlu anterior -> lipsă de inovație în design • firmele de distribuție nu își asumă riscuri inutile • un joc cu istoric de succes garantează investiția • multe jocuri independente create de studiouri mici nu primesc contracte de publicare -> canalele de distribuție digitală • mișcarea indie games 3
  • 4. Concepte privind dezvoltarea jocurilor electronice • soluția Microsoft pentru dezvoltatorii de indie games • lansat în decembrie 2006, împreună cu Xbox LIVE Community Games (Xbox LIVE Indie Games) • XNA - prescurtare de la “XNA's Not Acronymed” (XNA nu este un acronim) • XNA reprezintă un toolkit de dezvoltare gratuit ce folosește .NET si C# 4
  • 5. Concepte privind dezvoltarea jocurilor electronice • oferă toate instrumentele necesare dezvoltării unui joc • incapsulează toate aspectele legate de producția unui joc într-un singur sistem accesibil • extinde Visual Studio (sau C# Express Edition) • este disponibil gratuit pe portalul App Hub (fostul XNA Creator’s Club) • periodic este adăugat conținut suplimentar (tutoriale, mostre de cod etc.) 5
  • 6. Concepte privind dezvoltarea jocurilor electronice • jocurile create cu XNA pot rula pe: • platforma Windows • consola Xbox 360 • dispozitivele Zune • terminalele Windows Phone 7 • permite publicarea jocurilor create prin intermediul serviciului Xbox LIVE Marketplace 6
  • 7. Concepte privind dezvoltarea jocurilor electronice Structura framework-ului XNA Jocuri Starter Kits Cod Conținut Componente Extended Framework Modelul aplicației Content Pipeline Core Graphics Audio Input Math Storage Framework Platformă Direct3D XACT XINPUT XContent Legendă Oferit de XNA Creat de utilizator Comunitate 7
  • 8. Concepte privind dezvoltarea jocurilor electronice Starter Kits • Jocuri “complete” - pot reprezenta punctul de plecare pentru creațiile proprii - sunt însoțite de documentație și tutoriale - sunt ușor de folosit 8
  • 9. Concepte privind dezvoltarea jocurilor electronice • creat pentru a ilustra potențialul framework-ului XNA • reprezintă un simulator de zbor “arcade” plasat în timpul celui de-al Doilea Război Mondial Prezentare video - disponibilă online pe YouTube.com 9
  • 10. Concepte privind dezvoltarea jocurilor electronice • modul Campaign oferă o experiență single player dinamică • 2 campanii a câte 4 misiuni cu obiective variate • 10 tipuri de avioane cu diferite caracteristici, modelate după aparate de zbor reale • 3 grade de dificultate: pilot amator, experimentat sau as al zborului 10
  • 11. Concepte privind dezvoltarea jocurilor electronice • fiecare jucător își crează un profil de pilot care va memora performanțele sale (acuratețea tirului, numărul de inamici doborâți etc.) • îndeplinind misiuni și obiective, jucătorul câștigă puncte de experiență (XP), primește un nou grad militar și astfel poate debloca noi aparate de zbor • jucătorul primește Upgrade Points, ce vor servi la cumpărarea unor îmbunătățiri pentru fiecare avion 11
  • 12. Concepte privind dezvoltarea jocurilor electronice • progresul jucătorilor este marcat prin dobândirea de medalii și îndeplinirea unor obiective (achievements) • sistem asemănător cu Xbox 360 Achievements sau PlayStation 3 Trophies • sistemele de recompensare a jucătorului aduc un plus de amuzament și mențin ridicat interesul față de joc 12
  • 13. Concepte privind dezvoltarea jocurilor electronice • componenta multiplayer permite confruntarea împotriva unui alt jucător uman în mod Split Screen 13
  • 14. Concepte privind dezvoltarea jocurilor electronice • folosește Crimson Engine, un motor de joc special creat, format din: - motorul grafic (rendering engine) - sistemul de administrare a stării jocului (game state management system) - motorul fizic (physics engine) - logica aplicației (scenariile misiunilor, IA) - sistemul de memorare a datelor (profiluri, misiuni) 14
  • 15. Concepte privind dezvoltarea jocurilor electronice • implementează arhitectura MVC (Model View Controller) • structură compartimentată pentru a obține: - extensibilitate - robustețe - flexibilitate - reutilizarea componentelor 15
  • 16. Concepte privind dezvoltarea jocurilor electronice • teren 3D generat dintr-un height map, optimizat folosind tehnica quadtree • pentru un grad ridicat de realism, terenul beneficiază de implementarea tehnicilor terrain smoothing, multitexturing și normal mapping • iluminare difuză, reflectivă și ambientală • umbre ce răspund la iluminarea dinamică 16
  • 17. Concepte privind dezvoltarea jocurilor electronice • întinderi de apă cu efecte de reflecție și refracție • billboarding pentru vegetație și nori volumetrici • sisteme de particule (dâre de fum, flăcări, explozii) • condiții meteorologice (ceață, ploaie, zăpadă) cu parametri variabili (intensitate, viteză de cădere) • modele 3D Google SketchUp, optimizate pentru efecte de transparență și componente în mișcare 17
  • 18. Concepte privind dezvoltarea jocurilor electronice 18
  • 19. Concepte privind dezvoltarea jocurilor electronice • direcții viitoare de dezvoltare - grafică - vizualizarea pagubelor produse asupra unui avion (fragmentații ale diverselor componente) - creșterea dimensiunilor terenului - diversificarea tipurilor de teren și al obiectelor de decor (vegetație, clădiri, tipuri de nori) - mai multe efecte speciale (trasoare, așchii și fragmente la impactul proiectilelor) 19
  • 20. Concepte privind dezvoltarea jocurilor electronice • direcții viitoare de dezvoltare - single player - mai multe misiuni în cadrul celor două campanii - un fir narativ mai bine conturat - mai multe tipuri de avioane - diversificarea obiectivelor misiunilor - introducerea de obiective secundare opționale 20
  • 21. Concepte privind dezvoltarea jocurilor electronice • direcții viitoare de dezvoltare - multiplayer - adăugarea modului de joc în rețea (reunirea a mai mult de doi jucători simultan în aceeași partidă) - crearea unei aplicații server care să gestioneze derularea partidelor și memorarea profilurilor utilizatorilor - vizualizarea și compararea statisticilor jucătorilor și crearea de clasamente la nivel global 21
  • 22. Concepte privind dezvoltarea jocurilor electronice Întrebări? 22