Publicado el 13 de Agosto del 2017
1.123 visualizaciones desde el 13 de Agosto del 2017
31,8 MB
252 paginas
Creado hace 10a (10/04/2014)
Escuela Superior de InformáticaUniversidad de Castilla-La ManchaTegnix · Edlibrix Título: Videojuegos Multiplataforma con OpenFL.Autores: David Vallejo Fernández, Carlos González Morcillo y David Frutos TalaveraISBN: 978-84-942116-4-5 Depósito Legal: VG 137-2014Edita: Edlibrix 1ª Edición: Febrero 2014Diseño: Carlos González Morcillo Impreso en EspañaEste libro fue compuesto con LaTeX a partir de una plantilla de Carlos González Morcillo y Sergio García Mondaray. La portada y las entradillas fueron diseñadas con GIMP, Blender, InkScape y OpenOffice. Creative Commons License: Usted es libre de copiar, distribuir y comunicar públicamente la obra, bajo las condiciones siguientes: 1. Reconocimiento. Debe reconocer los créditos de la obra de la manera especificada por el autor o el licenciador. 2. No comercial. No puede utilizar esta obra para fines comerciales. 3. Sin obras derivadas. No se puede alterar, transformar o generar una obra derivada a partir de esta obra. Más información en: http://creativecommons.org/licenses/by-nc-nd/3.0/ David Vallejo (2009, Doctor Europeo en Informática, Universidad de Castilla-La Mancha) es Profesor Ayudante Doctor e imparte docencia en la Escuela de Informática de Ciudad Real (UCLM) en asignaturas relacionadas con Informática Gráfica, Programación y Sistemas Operativos desde 2007. Actualmente, su actividad investigadora gira en torno a la Vigilancia Inteligente, los Sistemas Multi-Agente y el Rendering Distribuido. Carlos González (2007, Doctor Europeo en Informática, Universidad de Castilla-La Mancha) es Profesor Titular de Universidad e imparte docencia en la Escuela de Informática de Ciudad Real (UCLM) en asignaturas relacionadas con Informática Gráfica, Síntesis de Imagen Realista y Sistemas Operativos desde 2002. Actualmente, su actividad investigadora gira en torno a los Sistemas Multi-Agente, el Rendering Distribuido y la Realidad Aumentada.David Frutos (Ingeniero Técnico en Informática de Sistemas, Universidad de Castilla-La Mancha). Experto en desarrollo de videojuegos para plataformas móviles con Haxe-NME. Apasionado del mundo de los videojuegos, obtuvo la máxima calificación académica como alumno de la primera edición del Curso de Experto en Desarrollo de Videojuegos de la Universidad de Castilla-La Mancha. PrefacioEldesarrollodevideojuegoshasufridounaevoluciónvertiginosaenlosúltimosaños.Pruebadeelloeslagrancantidaddeentornosydispo-sitivosparaloscualessecreanvideojuegos.Desderedessocialeshastaplataformasmóviles,pasandoporconsolasdesobremesayPCs,losvi-deojuegosestánpresenteseneldíaadíadecadavezmáspersonas.Estelibrosurgecomorespuestaaldesarrollomulti-plataformadevi-deojuegos,especialmenteenelámbitodelosdispositivosmóviles.Con-cebidodesdeunaperspectivaesencialmentepráctica,estelibroteayu-daráaprogramartupropiovideojuegoutilizandoOpenFL.Graciasaél,seráscapazdeimplementartupropiobucledejuego,integrarrecursosgráficosyfísica,añadirefectosdesonidoeinclusodesarrollarmódulosdeInteligenciaArtificialyNetworking.OpenFLesunframeworkopen-sourcemulti-plataformaquetieneso-porteparaWindows,Mac,Linux,iOS,Android,BlackBerry,FlashyHTML5.AunquelacreacióndeOpenFLesreciente,éstetienesubaseenNME,elcualasuvezhasufridounaevolucióndrásticayelpoten-cialqueofreceesenormedebidoalgrancompromisodelacomunidadquelosoporta.OpenFLseapoyaenelmodernocompiladordellengua-jedeprogramaciónHaxe,elcualpermitegenerarcódigoparadiversasplataformassinsacrificarelrendimientodelaaplicaciónfinal.Laversiónelectrónicadeestelibro,juntocontodoslosejemplosdecódigofuente,puededescargarsedesdehttp://www.openflbook.com.Ellibro«físico»puedeadquirirsedesdelapáginawebdelaeditorialonlineedlibrixenhttp://www.shoplibrix.es.DesdeaquítambiénteinvitamosaquevisiteslaweboficialdelCursodeExpertoenDesarrollodeVideojuegos,http://www.cedv.es,impartidoenlaUniversidaddeCastilla-LaManchaycuyomaterialdocentetam-biénestádisponibleendichaweb. ProgramasycódigofuenteOpenFLyHaxesonherramientasrelativamentemodernasysuevo-luciónesconstante.Enestecontexto,todoslosejemplosdecódigofuen-tediscutidosenestelibro,afechadeFebrerode2014,sepuedencom-pilarconlaversiónlaversión3.0.1deHaxe,laversión0.9.4deLimeylaversión1.2.2deOpenFL.Elcódigodelosejemplosdellibropuededescargarseenlapáginaweb:http://www.openflbook.com.Salvoqueseespecifiqueotralicencia,todoslosejemplosdellibrosedistribuyenbajoGPLv3.RequisitospreviosEstelibrotieneunpúblicoobjetivoconunperfilprincipalmentetéc-nico.Enotraspalabras,estelibronoestáorientadoparaunpúblicodeperfilartístico(modeladores,animadores,músicos,etc.)enelámbitodelosvideojuegos.Seasumequeellectortieneunosconocimientosdeprogramaciónmedios.Enellibroserealizaunabreveintroducciónallenguajedepro-gramaciónHaxe,peronosediscutensuscaracterísticasnisusdiferen-ciasconrespectoaotroslenguajesdeprogramación.Deigualmodo,seasumequeellectortieneconocimientosdeestructurasdedatosyalgoritmia.AgradecimientosLosautoresdellibroquierenagradeceraAulaTegnixyalaXuntadeGalicialafinanciacióndelcursotituladoProgramaciónMultimediaeXo-gos,cuyomaterialdocentefuelabasedelaprimeraedicióndelpresentelibro.DichocursofueimpartidoporlosprofesoresCarlosGonzálezMor-cilloyDavidVallejoFernández,amboscoautoresdelmismoyprofesoresdelDepartamentodeTecnologíasySistemasdeInformacióndelaEs-cuelaSuperiordeInformáticadelaUniversidaddeCastilla-LaMancha.LaversiónactualyrevisadadeestelibrosehapreparadoespecialmenteparaelCursodeEnseñanzasPropiastituladoVideojuegosMultiplatafor-maparaDispositivosMóvilesconOpenFLeimpartidoendichaEscuela.EsteagradecimientotambiénsehaceextensivoalaEscueladeInfor-maticadeCiudadRealyalDepartamentodeTecnologíasySistemasdeInformacióndelaUniversidaddeCastilla-LaMancha. ResumenAñotrasaño,eldesarrollodevideojuegossehaafianzadohastacon-vertirseenlaindustriadelentrenimientomásimportante,superandoalasindustriascinematográficaymusical.Tantoesasí,quelafactura-cióngeneradaentornoalmundodelosvideojuegossuperalos30.000millonesdeeurosanuales.Unadelasfraccionesmásrelevantesdees-tacifraestárepresentadaconelsoftware,esdecir,conelprocesosdediseñoydesarrollodevideojuegos.Lavariedaddedispositivoshardwareexistentes(consolas,ordena-dores,smartphones,tablets,ect)tienecomoconsecuenciadirectaquelosdesarrolladoresdevideojuegoshaganusodeherramientasoframe-worksquefaciliteneldesarrollomulti-plataforma.Elmotivoesclaro:obtenerunmayorretornodelainversiónrealizadaynodependerdeunaúnicatecnología.Enestecontexto,elprincipalobjetivodeestelibroconsisteenestu-diar,desdeunaperspectivapráctica,eldiseñoydesarrollodeunvideo-juegocompletoutilizandounframeworkmulti-plataformaquepermitalageneracióndeejecutablesparadistintasplataformas.Enconcreto,elframeworkutilizadoesOpenFL,elcualestábasadoenelpopularlen-guajedeprogramaciónmulti-plataformaHaxe.Así,ellibroplanteaunaintroducciónaldesarrollodevideojuegos,mostrandolaarquitecturatípicadeunmotordejuegos,ydiscutecómodiseñarydesarrollarunvideojuegocompletoconOpenFLmedianteuntutorialincremental.III Índicegeneral1.Introducción11.1.Eldesarrollodevideojuegos..................11.1.1.Laindustriadelvideojuego.Presenteyfuturo....11.1.2.Estructuratípicadeunequipodedesarrollo.....41.1.3.Elconceptodejuego...................71.1.4.Motordejuego......................101.1.5.Génerosdejuegos....................121.2.Arquitecturadelmotor.Visióngeneral............201.2.1.Hardware,driversysistemaoperativo........201.2.2.SDKsymiddlewares...................221.2.3.Capaindependientedelaplataforma.........231.2.4.Subsistemasprincipales................241.2.5.Gestorderecursos....................251.2.6.Motorderendering....................271.2.7.Herramientasdedepuración..............301.2.8.Motordefísica......................311.2.9.Interfacesdeusuario..................321.2.10.Networkingymultijugador...............321.2.11.Subsistemadejuego...................33V 1.2.12.Audio...........................361.2.13.Subsistemasespecíficosdejuego...........362.EntornodeTrabajo372.1.OpenFL.Tomadecontacto...................372.1.1.¿QuéesOpenFL?....................372.1.2.EllenguajedeprogramaciónHaxe...........432.1.3.InstalaciónyconfiguracióndeOpenFL........482.2.HelloWorld!conOpenFL....................533.TutorialdeDesarrolloconOpenFL633.1.Elbucledejuego.........................643.1.1.Elbuclederenderizado.................643.1.2.Visióngeneraldelbucledejuego...........653.1.3.Arquitecturastípicasdelbucledejuego.......663.1.4.GestióndeestadosdejuegoconOpenFL.......713.1.5.BubbleDemo:definicióndeestadosconcretos....773.2.RecursosGráficosyRepresentación.............853.2.1.Introducción.......................853.2.2.Sprites...........................893.2.3.CapasyTiles.......................923.2.4.AnimacióndeSprites:TileClip.............963.2.5.TextoconTrueType...................993.2.6.ScrollParallax......................1003.2.7.BeeAdventures:MiniJuego..............1053.2.8.SistemasdePartículas.................1163.3.Gestióndesonido........................1193.3.1.OpenFLysusoportedesonido............1203.3.2.LaclaseSoundManager.................1203.3.3.IntegrandosonidoenBeeAdventures.........1273.4.SimulaciónFísica........................1333.4.1.AlgunosMotoresdeSimulación............135 3.4.2.Aspectosdestacables..................1373.4.3.ConceptosBásicos....................1383.4.4.FormasdeColisión...................1393.4.5.Optimizaciones......................1423.4.6.HolaMundoconPhysaxe................1433.4.7.MásalládelHolaMundo................1493.5.InteligenciaArtificial.......................1583.5.1.Introducción.......................1583.5.2.AplicandoelTestdeTuring...............1593.5.3.Ilusióndeinteligencia..................1613.5.4.¿NPCsoAgentes?....................1623.5.5.Diseñodeagentesbasadoenestados.........1643.5.6.Búsquedaentreadversarios..............1663.5.7.Casodeestudio.UnTetrisinteligente.........1763.5.8.Casodeestudio.3enraya(tic-tac-toe)conOpenFL1793.6.Networking............................1863.6.1.Introducción.......................1863.6.2.Consideracionesinicialesdediseño..........1873.6.3.SocketsTCP/IP......................1893.6.4.Gestiónon-linederécordsenTic-Tac-To
Comentarios de: Videojuegos Multiplataforma con OpenFL (0)
No hay comentarios