Home
        memoria (7) - Rodin
         Contents
1.         s TRANSLATION o aoa da u a 5 wed A en ee da ne       ei    vosnsauRrwm    53  53  54  54  55    57  57  57  58    59  59  59  60  60  60  60  60  61  61  62  62  62    63  63    65  65  65    67    11  RELICENSING    ADDENDUM  How to use this License for your documents         o  o oo    o       IX    Indice de figuras    2 1   2 2   2 3     3    3 2   33   3 4   38   3 6     4 1   4 2   4 3   4 4   4 5   4 6   4 7   4 8   4 9     4 10   4 11   4 12   4 13   4 14   4 15   4 16   4 17   4 18   4 19   4 20   4 21   4 22     SAE  3 2   5 3   5 4     6 1     Descripci  n  Logo FEA o anta Ea oo ed ee ae Se an e A ee 3  Descripci  n  Futbolista de FEA    e  gt   lt a oa 2a ur das runs sans ra ne 4  Descripci  n  Bal  n FEA  modelos High y Low Poly                       4  Planificaci  n  Aprendizaje modelado  cara futbolista                         8  Planificaci  n  Aprendizaje texturizado seaming       o    oo    e    o    8  Planificaci  n  Aprendizaje texturizado    oe aa co a o    e    e    e    9  Planificaci  n  Aprendizaje rigging    2    2  m mm nen 9  Planificaci  n  Aprendizaje animaci  n   lt     oes saniar my aia a d a eo 10  Planificaci  n  Diagrama de Gantt  s 2    2 2 Comm 12  An  lisis  Boceto del men   principal               o                  14  An  lisis  Boceto de la pantalla de cr  ditos           o    oo    o         14  Analisis  Boceto de ventana de juego   o o e a a ru a aa Seren ae 15  An  lisis  Boceto de Men   de pausa               e    16  A
2.      To    Preserve the Title    of such a section when you modify the Doc   ument means that it remains a section    Entitled XYZ    according to this definition    The Document may include Warranty Disclaimers next to the notice which states that this License ap   plies to the Document  These Warranty Disclaimers are considered to be included by reference in this Li   cense  but only as regards disclaiming warranties  any other implication that these Warranty Disclaimers  may have is void and has no effect on the meaning of this License     2  VERBATIM COPYING    You may copy and distribute the Document in any medium  either commercially or noncommercially   provided that this License  the copyright notices  and the license notice saying this License applies to  the Document are reproduced in all copies  and that you add no other conditions whatsoever to those of  this License  You may not use technical measures to obstruct or control the reading or further copying  of the copies you make or distribute  However  you may accept compensation in exchange for copies  If  you distribute a large enough number of copies you must also follow the conditions in section 3    You may also lend copies  under the same conditions stated above  and you may publicly display copies     3  COPYING IN QUANTITY    70    If you publish printed copies  or copies in media that commonly have printed covers  of the Document   numbering more than 100  and the Document   s license notice requires Cove
3.    Mejoras yampllaeiones   y caraus 428 2 ne a ae A aa a    A  Herramientas utilizadas  Acl   Lenguaje de programaci  n x  a eces 3 sea eange aa ea gm aa a aa ae  A2  Motor de renderizado o oi ae teed a0 a  aaa wa ae ie oh Da aa  Ad  F  SICAS Y COMSIOMES meti a ogi ace ee a nas a Be os a ee en  AA  Gesti  n entrada de usuario aa a 6 02 0 0 a a we  AD SOMO  u  a a IN eR a ee me A da  AsO E ic bike ear Ok aoe   lh A neh Be Bae ee  Bode  BEIRT ona ATA ss eee TA eed Oe A ee He EA  ae  AS GIMP es ee ena a Rw A OR GOR Ha do ea Rw Roe Be Goa Yow A wee  A 9  Sistema de control de versiones    2    64 a nu u ba he Ree a  A 10  Documentaci  n del c  digo  lt    e s s 2    0    ae ce ankam  A 11 Redaceion de la memora    ociosos ae aD Ae ek ee bb ee me Aw da  A 12 Realizaci  n de diagramas  Dia o o ace a sosu tos poa DOA EAN en    B  Manual de instalaci  n  B 1  Linux  Ubuntu  Desde c  digo fuentes   lt  2 Zara    roc ee GA 2 Serie    C  Manual de usuario  Cul  Men   principal 4 4 2468466 ren nee eS WG a wd  C2  Pantalla de juego  2    2 au ee ie ee ee Ee eB A ee we    Bibliografia y referencias    GNU Free Documentation License     APPLICABILITY AND DEFINITIONS       2 0    0 0000 00 pee eee eee     VERBATIM COPYING   46605 2 4 a  wa RR EG HERD RA ERD a GO     COPYING INQUANTITY         2 ma au aan coh a    MODIFICATIONS   o eee e a ua an we wR    COMBINING DOCUMENTS   1    40 606 66 a ew    COLLECTIONS OF DOCUMENTS       2    LL nn  AGGREGATION WITH INDEPENDENT WORKS              o   
4.   Men   principal escenario principal      Usuario          InicioAplicacion      CambiarEstado Playing        Figura 4 7  An  lisis  Diagrama de secuencia Men   principal  escenario principal     Operaci  n InicioAplicacion     Actores Jugador  sistema    Responsabilidades inicia la aplicaci  n y muestra el men   principal   Precondiciones Ninguna   Postcondiciones      El sistema inicia todos los subsistemas necesarios para la correcta ejecuci  n de la aplicaci  n     a El sistema cambia el estado de aut  mata juego a    MainMenu      Operaci  n Jugar    Actores Jugador  Sistema   Responsabilidades salir del men   principal y acceder a la pantalla de juego   Precondiciones      El estado del juego es    MainMenu        24    Postcondiciones      Se cambia de estado el juego a    Playing        Caso de uso  Men   principal escenario 2a      Usuario          InicioAplicacion      SeleccionarCreditos      CambiarEstado Creditos        Figura 4 8  An  lisis  Diagrama de secuencia Ment principal  escenario 2a     Operaci  n SeleccionarCr  ditos      Actores Jugador  sistema     Responsabilidades salir del ment principal y entrar en la pantalla de cr  ditos     Precondiciones      El aut  mata juego est   en estado    MainMenu        Postcondiciones      El aut  mata juego cambia al estado    Credits        25    Caso de uso  Men   principal escenario 2b      Usuario  Sistema       InicioAplicacion      SeleccionarSalir      CambiarEstado Salir        Figura 4 9  Analisis  Diagra
5.   Precondiciones     El objeto juego esta en estado MainMenu   Postcondiciones      El objeto juego cambia a estado Credits     Operaci  n SeleccionarMenu    Actores Jugador  sistema   Responsabilidades destruye la pantalla de cr  ditos y vuelve el men   principal   Precondiciones  a El objeto juego est   en estado Credits   Postcondiciones      Se destruye el estado Credits y se pasa a estado MainMenu     38    Cap  tulo 5  Dise  o    Al igual que en el apartado referente al an  lisis del sistema  en el dise  o de este tambi  n usaremos  una metodolog  a orientada a objetos mediante UML     Este proceso es mucho m  s sencillo una vez que ya se ha especificado que hace el sistema en el  cap  tulo anterior  Tambi  n decir  que al igual que el an  lisis del sistema  el dise  o no contempla muchos  detalles del sistema final  s  lo una idea orientativa de como se implementar   el sistema     En este cap  tulo no se han a  adido descripciones de las clases que componen el sistema  para ello  se encuentra disponible toda la documentaci  n del c  digo  donde esta toda la informaci  n necesaria  referente a las clases y archivos que componen la aplicaci  n     5 1  Tnterfaz gr  fica    Tras los resultado que se han obtenido en la fase de an  lisis del sistema  es necesario desarrollar una  interfaz sencilla y agradable para el usuario de la misma  En el dise  o de estos  se intentar   en todo  momento que el flujo de ejecuci  n sea lo m  s intuitivo posible para el usuario        Fi
6.  1 9P SedISeqg sapepIsa33N lv  oyjossesag A t  D 3a nga1bO TEE      ng VEE  INNA A         3160 TE  ead ve  to uojeg Ere  tn e3510q1N4 LE  po ofauew A soquawepun4 Le  J  pu   g a LE  afezjpuaidy a      SOIJES939U SOSINIIY z2  ty oy  s  nbaJ ap UOIDe Id023y Vz  L Loz aus 21 ee  lt   0 aKoJd Jap ozui UOIDEIJIUL d L  Ld  vd     0  20  Ld  vd  ed  z  10  vd  a  qwon SEM       ELOZ  z  oz LLOZ     Figura 3 6  Planificaci  n  Diagrama de Gantt     12    Cap  tulo 4  An  lisis    4 1  Especificaci  n de requisitos del sistema    Para la creaci  n de cualquier producto software  es necesario establecer las distintas condiciones y  necesidades que ha de satisfacer  Seguiremos un esquema que nos permita describir los requisitos de  una forma met  dica y racional     4 1 1  Requisitos de interfaces externas    En este apartado se describir   los requisitos de conexi  n del software y el hardware  as   como la interfaz  de usuario    La conexi  n entre el software y el hardware se encarga la librer  a Ogre  un motor de renderizado en  3D  en el lenguaje de programaci  n C    Por lo que al ser un sistema preestablecido  no ser   necesario  realizar el dise  o  ni el an  lisis  s  lo haremos uso de   l    As   que pasamos a definir la interfaz entre el usuario y el videojuego  Todas las ventanas de la aplicaci  n  tendr  n una resoluci  n de 800x600 p  xeles a pantalla completa  En la aplicaci  n encontraremos     Ventana de men   principal La ventana del men   principal  figura 4 1  muest
7.  If a section in the Document is Entitled    Acknowledgements        Dedications     or    History     the require   ment  section 4  to Preserve its Title  section 1  will typically require changing the actual title     9  TERMINATION    73    You may not copy  modify  sublicense  or distribute the Document except as expressly provided un   der this License  Any attempt otherwise to copy  modify  sublicense  or distribute it is void  and will  automatically terminate your rights under this License    However  if you cease all violation of this License  then your license from a particular copyright holder  is reinstated  a  provisionally  unless and until the copyright holder explicitly and finally terminates  your license  and  b  permanently  if the copyright holder fails to notify you of the violation by some  reasonable means prior to 60 days after the cessation    Moreover  your license from a particular copyright holder is reinstated permanently if the copyright  holder notifies you of the violation by some reasonable means  this is the first time you have received  notice of violation of this License  for any work  from that copyright holder  and you cure the violation  prior to 30 days after your receipt of the notice    Termination of your rights under this section does not terminate the licenses of parties who have received  copies or rights from you under this License  If your rights have been terminated and not permanently  reinstated  receipt of acopy of some or 
8.  a a  AVA  Restrieciones dedisend     i Gh ac aan aaa rn a a a G  4 1 5  Requisitos del sistema software        o    o    e      e         4 2    Modelo de CASOS SUSO p o a aan nn a cn AA TA a a AA  4 2 1  Diagrama de los casos de uso           o    a  4 2 2  Descripci  n de los  casos de USO  o    u au  ar rn sun sem ra   4 3  Modelo conceptual de datos          LL RL o    E ee  4 3 1  Diagrama de clases conceptuales  s 2    2 Co Cum   4 4  Modelo de comportamiento del sistema        o    oo    e      e        4 4 1  Diagramas de secuencia y contrato de las operaciones del sistema              5  Dise  o  Sls ir A A   ek ome an ae we ae    O ee ee  5 1 1  Diagrama de interacci  n entre interfaces    LL CC mn  3 2    Diagrama de clases de dise  o  4a  4   8  4 2 as m Pa be Dad Ba a We T Aa    13  13  13  16  17  17  17  17  17  19  23  23  23  24    6  Implementaci  n  Gila     F  sicas  YCOMSIONES s asos aea cn ar ee nn AER AA  6 2   Inteligencia arufieial ope unan e we ar a bern  62 Jugadores ns 200 8 0 AOA  Ee ee a a A ag RA  922   EQUIPOS z eto en esate a an a Mie ae Ge ale    7  Pruebas  Tele  Prueb  s unltanas  AE 20 tesen aue ran  1 2     PRUEBAS de Integraci  n  s socs nn ne er ee ae wie a ek   A  Tas  Pruebas de jusabilidad coo ganas a 3 44    5 a 2 0 8 an a a  JA  Pruebas de interfaz os 2 4 2 2 0 ia eh red bad    8  Conclusiones  8 1  Resumen de Objetivos          u    sun  an ern nn  8 2    Conclusiones personales    a    ca ged 000 al an ee MAIO AO E Boo ATA  8 3 
9.  cada  hueso      9       Figura 3 5  Planificaci  n  Aprendizaje animaci  n       Familiarizaci  n con las bibliotecas  Para llevar a cabo el desarrollo de este juego se opt   por  utilizar Ogre3D como motor gr  fico  BulletrOgreBullet wrapper  como motor de f  sicas  OIS  para manejar la entrada del usuario  MyGUI como sistema para la interfaz y SDL Mixer para el  sonido  Pero antes de decantarme estuve haciendo pruebas para ver qu   me ofrec  an con respecto  a las alternativas  Para el aprendizaje de la utilizaci  n de Ogre le    2  y  3      3 4  Fase de desarrollo    Tras la consecuci  n de las etapas anteriores  se comenz   el desarrollo del proyecto  Esta etapa del  desarrollo es la m  s extensa de todas  como es comprensible  Y es posible llevarla a cabo gracias a que  ya tenia los modelos que habia empleado en el aprendizaje y alguna animaci  n disponible       Motor b  sico  implementaci  n de las necesidades b  sicas del proyecto  arquitectura general   m  quinas de estados para el propio juego  los equipos  los jugadores  control del rat  n  teclado  y joystick  carga de recursos y movimiento de los futbolistas       Motor de f  sicas y colisiones  El empleo de un motor de f  sicas se me hacia imprescindible en  casos como disparos a porter  a o pases donde influyen la gravedad y la fricci  n  Adem  s de las  colisiones del bal  n con las porter  as y los futbolistas o entre   stos   ltimos       Creaci  n de men  s e interfaz  implementaci  n de la breve interfa
10.  escenario principal      Usuario  Sistema    ChutarBal  n    Bal  n impulsado       Oponente intercepta y controla    Figura 4 18  An  lisis  Diagrama de secuencia Chutar Bal  n  escenario principal   Operaci  n ChutarBalon    Actores Jugador  sistema   Responsabilidades hace que el jugador chute el bal  n hacia su orientaci  n actual   Precondiciones    a Existe un objeto pl de Player perteneciente al SoccerTeam s1 que posea el bal  n     Existe un objeto p2 de Player perteneciente al SoccerTeam s2       El objeto juego est   en estado Playing   Postcondiciones      El objeto player pl deja de poseer el bal  n     El objeto player p2 intercepta y controla el disparo     34    Caso de uso  Chutar Bal  n  escenario 3a      Usuario  Sistema    ChutarBal  n    Bal  n impulsado    Oponente intercepta  Bal  n rebota       Figura 4 19  An  lisis  Diagrama de secuencia Chutar Bal  n  escenario 3a     Operaci  n ChutarBalon      Actores Jugador  sistema     Responsabilidades hace que el jugador chute el bal  n hacia su orientaci  n actual     Precondiciones    a Existe un objeto pl de Player perteneciente al SoccerTeam s1 que posea el bal  n   a Existe un objeto p2 de Player perteneciente al SoccerTeam s2     a El objeto juego est   en estado Playing     Postcondiciones      El objeto player pl deja de poseer el bal  n   a El objeto player p2 intercepta el disparo pero no controla el bal  n y   ste sale rebotado     35    Caso de uso  Chutar Bal  n  escenario 3c      Usuario  Sistem
11.  la ve   locidad de los futbolistas       Colisiones con entre futbolistas  comprobaci  n de las colisiones entre futbolistas en los distintos  lances del juego     a Posiciones futbolistas  correcto posicionamiento de los futbolistas en estados de ataque  defensa  O saque a bal  n parado       Inteligencia artificial  la agilidad y dificultad de jugar contra la inteligencia de la IA     La mayor parte de las personas que probaron el juego  opinaron que   ste ten  a una complejidad elevada  para dificultar la victoria al jugador lo suficiente  Aunque opinaron que hacian falta cambios en algunas  posiciones defensivas  as   como la velocidad de los jugadores  Tras realizar los cambios propuesto  los  colaboradores se mostraron m  s contentos con los resultados     54    7 4  Pruebas de interfaz    Conforme se realizaban las distintas pantallas referentes a los men  s que podemos encontrar en el  juego  se realizaban pruebas exhaustivas sobre la interacci  n entre   stas  Sobre todo se comprobaban  que las interfaces fueran intuitivas y claras  As   como comprobar la coherencia de elementos cambiantes  como el sonido o el volumen de   ste     Se comprob   que la interfaz era bastante simple y no era necesario ning  n manual de usuario para  poder navegar sobre ella  El sistema de opciones no admite valores err  neos     55    56    Cap  tulo 8    Conclusiones    En esta secci  n se comentar  n las distintas conclusiones que se han obtenido tras la finalizaci  n del  proyecto F 
12.  n     a El objeto juego est   en estado Playing   Postcondiciones      El objeto player pl deja de poseer el bal  n     El objeto player p2 es el nuevo poseedor del bal  n     31    Caso de uso  Pasar Bal  n  escenario 2a      Usuario  Sistema    PasarBal  n      Bal  n impulsado       Figura 4 16  An  lisis  Diagrama de secuencia Pasar Bal  n  escenario 2a     Operaci  n PasarBalon      Actores Jugador  sistema     Responsabilidades hace que el jugador pase el bal  n su orientaci  n actual     Precondiciones      Existe un objeto pl de Player perteneciente al SoccerTeam s que posea el bal  n     a El objeto juego est   en estado Playing     Postcondiciones      El objeto player pl deja de poseer el bal  n       El bal  n es impulsado en la direcci  n en la que est   mirando el jugador pl     32    Caso de uso  Pasar Bal  n  escenario 3a      Usuario  Sistema    PasarBal  n    Bal  n impulsado       Oponente recibe    Figura 4 17  An  lisis  Diagrama de secuencia Pasar Bal  n  escenario 3a   Operaci  n PasarBalon    Actores Jugador  sistema   Responsabilidades hace que el jugador pase el bal  n   Precondiciones      Existe un objeto pl de Player perteneciente al SoccerTeam s1 que posea el bal  n   a Existe un objeto p2 de Player perteneciente al SoccerTeam s2 que no posee el bal  n     a El objeto juego est   en estado Playing   Postcondiciones    a El objeto player pl deja de poseer el bal  n     El objeto player p2 intercepta el bal  n     33    Caso de uso  Chutar Bal  n 
13.  n y formato  Cuando nos refiramos a un programa o biblioteca en concreto  utilizaremos la notaci  n   Ogre   Cuando nos refiramos a un fragmento de c  digo  usaremos la notaci  n     print  Hola mundo     Cuando nos refiramos a alg  n comando introducido en la terminal  usaremos la notaci  n       sudo apt get install    VI      ndice general    1  Introducci  n  Li cas IE  UD   TODISUNOS   di ai cae be dos dd OE eh a a to Re AE ES  1 3  Estructura del documento  2 4 aos cs as so racore wa RA aa Ge Qa aw eS    2  Descripci  n general del proyecto  2   IDESCHIPCION  se esans aca gome aoa Seale  ey a a I eR Aa ew a ea SE  2 2  Caracter  sticas del videojuego                    ee  2 21  Blementosde JUEZ  2 4 Taboas de des  amp  ew oy aed cd  23     Colaboradores   i    4    4 au ee he a a a ara ed    3  Planificaci  n  3 1  Faseimicial   lt eo 24 cha ba a de a a la a a a  9 2 Base de analisis  oa se daaa aa ae a ee a  3 34  Fase Aprendizaje ac aoa 2 4 arado OP ew eke ae Ral eda Ho gw we doa wa  3 4   Faseide desamoll       22  4 8 2 Ade a hee ee RE ee aE AYRE oO  39  Pruebas y Correcciones a un a ee a da  3 6  Redacci  n de la memoria   o a  ca sa va sad wa aa sascha  3 7  Diagrama de Gante s as ae bike wald a A Ae a aa    4  An  lisis    4 1  Especificaci  n de requisitos del sistema     LL LL LL LL nenn  4 1 1  Requisitos de interfaces externas   sss 2622 ee ee RER  4 1 2  Requisitos funcionales     e e e 2 ob E A nen  41 3  Requisitos de rendimiento  x s      uw  wen a Oe E
14.  realizar la simulaci  n en las mismas circunstacias  adelantando as   el tiempo que tardar     Esta operaci  n se convierte en la m  s costosa del sistema     6 2  Inteligencia artificial    Otro de los aspectos m  s importantes y complejos de un videojuego de las caracter  sticas de F  tbol Es  As    es la inteligencia artificial  ya que uno de los dos equipos ser   dirigido por el ordenador  Para poder    45    simular el comportamiento de los futbolistas o de un conjunto de ellos se han implementado un conjunto  de estados y comportamientos     6 2 1  Jugadores  Los comportamientos m  s b  sicos de los futbolistas son     a Perseguir  Mueve al cuerpo hacia la posici  n destino        Figura 6 1  Implementaci  n  Seek    Este comportamiento se usa especialmente en el estado ChaseBallza sea porque el oponente posee  el bal  n o porque este   ltimo est   libre       Predecir  Mueve al cuerpo en la direcci  n en la que el bal  n se encontrar   en el futuro seg  n la  velocidad de   ste y la distancia entre ellos     46       Figura 6 2  Implementaci  n  Pursuit      Interponerse  Mueve al cuerpo a la posici  n situada entre   ste y otro cuerpo     LOC       Figura 6 3  Implementaci  n  Interpose    La IA tambi  n implementa la decisi  n de los futbolistas a la hora de realizar un pase o un disparo   escogiendo el destino y la potencia seg  n la distancia  El flujo de selecci  n del futbolista cuando tiene  la posesi  n del bal  n es el siguiente     47              Est   prep
15.  tbol Es As       8 1  Resumen de objetivos    En primer lugar comentar que es el primer proyecto de estas caracter  sticas al que me enfrento en  solitario  Es evidente que su realizaci  n no me ha dejado indiferente  No ha sido f  cil construir una idea  clara sobre lo que se quer  a hacer  As   como solucionar los distintos problemas que han ido apareciendo  a lo largo del desarrollo de este     Tambi  n decir que el proyecto me ha ocupado bastante m  s tiempo del esperado en un principio   Tuve muchos problemas y dudas en algunas fases del desarrollo de proyecto  que me tuvieron bloqueado  durante un tiempo hasta encontrar la soluci  n m  s adecuada para   stos  He sido capaz de adentrarme a  mirar    Se puede decir que con este proyecto he aprendido much  simo en todas y cada una de los aspectos y  fases que lo componen  destacando sobre el resto el dise  o de este tipo de sistema  c  mo interact  an sus  componentes y c  mo implementar esto de manera elegante y flexible     8 2  Conclusiones personales    Durante el desarrollo del proyecto se han aprendido much  simas cosas  como hacer distintas ramas de  desarrollo  plantear y crear calendarios  usar las herramientas adecuadas  hacer decisiones importantes  para el desarrollo de este  documentaci  n del c  digo  organizaci  n  etc  Ya que durante la carrera se  han realizado distintas pr  cticas y trabajos de complejidad  pero nada con el tama  o y duraci  n que  requiere un Proyecto de fin de carrera  Una vez finaliza
16.  y todo el contenido 2D de elaboraci  n propia        Figura A 4  Herramientas utilizadas  Logo de Gimp    A 9  Sistema de control de versiones    Todo el c  digo y recursos de F  tbol Es Asi esta alojado en el sistema que proporciona Redlris  que  consiste en un entorno completo usando el sistema de control de versiones subversion     Nos permite llevar todas las versiones y visualizar todos los cambios que se han producido durante  todo el desarrollo del proyecto  entre los distintos archivos del mismo  asf como poder volver a ver   siones anteriores en caso de necesidad y cualquier operaci  n que permita cualquier sistema de control  de versiones     Se evaluaron otros sistema de control de versiones como pueden ser GIT o mercurial   pero finalmente  me decant   por subversion  ya que pens   en la inscripci  n en el Concurso Nacional de Software Libre  que requiere usar Redlris     61    A 10  Documentaci  n del c  digo    Para la documentaci  n del c  digo me decant   por usar Doxygen  esta permite la documentaci  n sen   cilla y legible de todo el c  digo  generando la documentaci  n en varios formatos como puede ser HTML  o PDF     Tambi  n comentar que dicha herramienta se us   en proyectos anteriores con resultados muy satisfac   torios     A 11  Redacci  n de la memoria     Para la completa realizaci  n de la memoria se ha usado IEX  Es un sistema de composici  n de  textos  orientado especialmente a la creaci  n de libros  documentos cient  ficos y t  cnicos que con
17. 009  864 p  ISBN 978 1568814131     67    68    GNU Free Documentation License    Version 1 3  3 November 2008  Copyright     2000  2001  2002  2007  2008 Free Software Foundation  Inc      lt http   fsf org  gt     Everyone is permitted to copy and distribute verbatim copies of this license document  but changing it  is not allowed     Preamble    The purpose of this License is to make a manual  textbook  or other functional and useful document     free    in the sense of freedom  to assure everyone the effective freedom to copy and redistribute it  with  or without modifying it  either commercially or noncommercially  Secondarily  this License preserves  for the author and publisher a way to get credit for their work  while not being considered responsible  for modifications made by others    This License is a kind of    copyleft     which means that derivative works of the document must themselves  be free in the same sense  It complements the GNU General Public License  which is a copyleft license  designed for free software    We have designed this License in order to use it for manuals for free software  because free software  needs free documentation  a free program should come with manuals providing the same freedoms that  the software does  But this License is not limited to software manuals  it can be used for any textual  work  regardless of subject matter or whether it is published as a printed book  We recommend this  License principally for works whose purpose i
18. Ninguna   Postcondiciones El usuario completa un partido   Escenario principal    1  El sistema carga el escenario  los jugadores  el bal  n y las porter  as   2  El sistema muestra la pantalla de juego   3  El usuario y el sistema interact  an durante el partido     4  El usuario completa el partido     19    5  Elsistema muestra un mensaje fin de partido y vuelve al men   principal   Extensiones     flujo alternativo       a El usuario cierra la ventana de la aplicaci  n y sale de la aplicaci  n    Caso de uso  Pausar   Caso de uso Pausar   Descripci  n El usuario selecciona pausar el juego y puede reanudarlo o volver al men   principal   Actores Usuario   Precondiciones Se est   jugando una carrera   Postcondiciones Ninguna    Escenario principal    1  Elusuario pulsa el bot  n de pausa   2  Elsistema detiene todos los elementos del juego y muestra el men   de pausa   3  Elusuario pulsa la opci  n reanudar     4  Elsistema reanudar la carrera   Extensiones     flujo alternativo       a El usuario cierra la ventana de la aplicaci  n y sale de la aplicaci  n   b El usuario pulsa la opci  n men       1  El sistema vuelve al men   principal     Caso de uso  Mover jugador   Caso de uso Mover jugador   Descripci  n El usuario desplaza al futbolista seleccionado por el terreno de juego   Actores Usuario   Precondiciones Se est   jugando un partido y hay un futbolista seleccionado   Postcondiciones Ninguna    Escenario principal    1  El usuario pulsa sobre una de los botones de m
19. Opebn  13A0W          Gr             os igs  a         apn  2ut         gt  SONP31I Jap          e    e  ASpn1 gt uTt  e    4       apn out   7     gt          edpuud nuaw           gt        pn   gt ur  P  e  e  e  e     gt        apn  aur   ee eo e   apniout    opiueg sebnf  a e  Y       ouensn    Figura 4 5  An  lisis  Diagrama de casos de uso    18    4 2 2  Descripci  n de los casos de uso   A continuaci  n pasamos a la descripci  n de cada uno de los casos de uso  para la cual usaremos una  notaci  n forma usando plantillas  El texto debe ser legible y comprendido por un usuario que no sea  experto   Caso de uso  Men   principal    Caso de uso Men   principal    Descripci  n Se muestra el men   principal de la aplicaci  n  donde es posible elegir entre jugar  ver los  cr  ditos o salir     Actores Usuario  Precondiciones Ninguna  Postcondiciones Ninguna  Escenario principal    1  Elusuario inicia la aplicaci  n  2  Elsistema muestra el men   principal del juego en pantalla   3  El usuario selecciona la opci  n jugar     4  El sistema inicia el juego   Extensiones     flujo alternativo       a El usuario cierra la ventana de la aplicaci  n y sale de la aplicaci  n  2a El usuario selecci  n la opci  n cr  ditos    1  El sistema inicia la opci  n cr  ditos  2c El usuario selecci  n la opci  n salir     1  El sistema sale de la aplicaci  n     Caso de uso  Jugar partido   Caso de uso Jugar partido   Descripci  n El usuario juega un partido  Actores Usuario   Precondiciones 
20. WY    UCA    Universidad  de Cadiz    ESCUELA SUPERIOR DE INGENIERIA    INGENIERIA TECNICA EN INFORMATICA DE GESTION    FUTBOL ES ASI    Alberto Cejas Sanchez    16 de febrero de 2013    SY  UCA    Universidad  de C  diz    ESCUELA SUPERIOR DE INGENIER  A    INGENIERO T  CNICO EN INFORM  TICA DE SISTEMAS    F  tbol Es As        Departamento  Ingenier  a Inform  tica    Director del proyecto  Manuel Palomo Duarte      Autor del proyecto  Alberto Cejas S  nchez    C  diz  16 de febrero de 2013    Fdo  Alberto Cejas S  nchez    Agradecimientos    Aunque el desarrollo ha sido largo y por momentos tedioso  agradecer al tutor Manuel Palomo por la  motivaci  n necesaria a adentrarme a un proyecto de esta envergadura  del cual sin duda he aprendido  bastante  Debo mencionar tambi  n a Mat Buckland  autor de  1   el libro que he usado como base para  todo este proyecto     II    Licencia    Este documento ha sido liberado bajo Licencia GFDL 1 3  GNU Free Documentation License   Se in   cluyen los t  rminos de la licencia en ingl  s al final del mismo     Copyright  c  2013 Alberto Cejas S  nchez   Permission is granted to copy  distribute and or modify this document under the terms of the GNU Free  Documentation License  Version 1 3 or any later version published by the Free Software Foundation     with no Invariant Sections  no Front Cover Texts  and no Back Cover Texts  A copy of the license is  included in the section entitled  GNU Free Documentation License      I    IV    Notaci 
21. a       ChutarBal  n    Bal  n impulsado    Figura 4 20  An  lisis  Diagrama de secuencia Chutar Bal  n  escenario 3c     Operaci  n ChutarBalon      Actores Jugador  sistema     Responsabilidades hace que el jugador chute el bal  n hacia su orientaci  n actual     Precondiciones    a Existe un objeto pl de Player perteneciente al SoccerTeam s1 que posea el bal  n     a El objeto juego est   en estado Playing     Postcondiciones      El objeto player pl deja de poseer el bal  n       El marcador del SoccerTeam s1 se incrementa en una unidad     36    Caso de uso  Chutar Bal  n  escenario 3d      Usuario  Sistema    ChutarBal  n    Bal  n impulsado    Fuera       Figura 4 21  An  lisis  Diagrama de secuencia Chutar Bal  n  escenario 3d     Operaci  n ChutarBalon      Actores Jugador  sistema     Responsabilidades hace que el jugador chute el bal  n hacia su orientaci  n actual     Precondiciones    a Existe un objeto pl de Player perteneciente al SoccerTeam s1 que posea el bal  n     a El objeto juego est   en estado Playing     Postcondiciones    a El objeto player p1 deja de poseer el bal  n       El bal  n es impulsado y sale inmediatamente fuera     37    Caso de uso  Cr  ditos  escenario principal     PantallaCreditos      SeleccionarMenu      CambiarEstado menu principal        Figura 4 22  An  lisis  Diagrama de secuencia Cr  ditos escenario principal     Operaci  n PantallaCr  ditos    Actores Jugador  sistema   Responsabilidades crea y muestra la pantalla de cr  ditos
22. a cabo la reproducci  n del sonido se emple   SDLMixer  una extensi  n de la famosa librer  a  SDL  Destaca por su sencillez y flexibilidad siguiendo el patr  n de libre  multiplataforma y eficiente     A 6  Interfaz    La interfaz de los men  s se llev   a cabo a trav  s de MYGUT  una librer  a multiplataforma  libre y muy  sencilla  A pesar de no ser la m  s completa  se ajustaba a las necesidades del proyecto     A 7  Blender    La elecci  n del programa de edici  n 3D era tambi  n importante ya que deb  a poder exportarse todo  el contenido al motor de renderizado Ogre  Tras una investigaci  n previa me decid   por Blender     60    Blender es un programa inform  tico libre  multiplataforma  dedicado especialmente al modelado  ani   maci  n y creaci  n de gr  ficos tridimensionales  Tiene una extensa comunidad y cuenta con multitud de  documentaci  n audiovisual que facilitan el complicado aprendizaje de la herramienta    En el foro oficial de Ogre se desarroll   un exportador de Blender a Ogre que aunque cuenta con multitud  de bugs  acab   cumpliendo con su cometido b  sico     X  blender    Figura A 3  Herramientas utilizadas  Logo de Blender    A 8  Gimp    GIMP  GNU Image Manipulation Program  es un programa de edici  n de imagenes digitales en forma  de mapa de bits  tanto dibujos como fotograf  as  Es un programa libre y gratuito  Est   englobado en el  proyecto GNU y disponible bajo la Licencia p  blica general de GNU    Con   l se han realizado texturas  botones 
23. a e e e o    o    ee ee 66    XII    Cap  tulo 1    Introducci  n    1 1  Motivaci  n    La idea de desarrollar un videojuego de f  tbol auna mis dos intereses principales  la inform  tica y  el balompi    Adem  s de incorporar un componente creativo y paralelamente iniciarme un poco en el  mundo art  stico del dise  o 3D     Tambi  n he de a  adir que tras conocer abiertamente el mundo del Software libre  gracias a la impor   tancia que se le presta en la Universidad de C  diz  Se decidi   que el proyecto fuera software libre bajo  licencia GPL v3  Y as   cualquier persona interesada en el desarrollo de videojuegos y en el software  libre en general  pudiera usar los recursos del proyecto libremente     1 2  Objetivos    El objetivo principal del proyecto es realizar un videojuego sencillo de f  tbol en tres dimensiones  que  me permita aprender los distintos campos que componen el desarrollo de videojuegos y las simulaciones     Los destinatarios principales del videojuego son los jugadores casuales  que dedican poco tiempo  jugando  debido a que carece de trama argumental u objetivos trofeos     1 3  Estructura del documento  Este documento esta compuesto por las siguientes partes       Introducci  n  peque  a descripci  n del proyecto  as   como los objetivos y estructura del docu   mento       Descripci  n general  descripci  n m  s amplia sobre el proyecto  as   como todas las caracter  sticas  relevantes que tendr         Planificaci  n  exposici  n de la planificaci  
24. a opciones de pase     Para ello busca el oponente que est   justo delante suya y regatea hacia la izquierda si   ste est   a  la derecha del regateador  o regatea hacia la derecha si el oponente est   a la izquierda suya     Adem  s de buscar apoyo  los jugadores sin la posesi  n del bal  n act  an de alguna de las siguientes  maneras       Perseguir bal  n  Utilizando el comportamiento  Perseguir descrito anteriormente  persigue al  bal  n si es el jugador de su equipo m  s cercano al esf  rico       Volver a su regi  n origen  Utilizando el comportamiento perseguir  el jugador toma como obje   tivo su posici  n original en el campo       Proteger porter  a  En el caso de los porteros  haciendo uso del comportamiento   nterponerse    se coloca a una distancia fija de la l  nea de gol protegiendo   sta de las amenazas rivales seg  n la  posici  n de   stos     50      Interceptar bal  n  En el caso de los porteros  haciendo uso del comportamiento  Predecir   in   terceptar el bal  n en la posici  n futura en la que estar   este       Esperar  En caso de que el futbolista no tenga ninguna responsabilidad espera acontecimientos     6 2 2  Equipos    Adem  s de los comportamientos individuales de los futbolistas  cada equipo puede adoptar tres tipos  distintos de comportamiento seg  n las circunstancias del juego       Atacar  Posiciona a los futbolistas en regiones del campo adelantadas con respecto a su porter  a     a Defender  Posiciona a los futbolistas en regiones del cam
25. a que no tenga que compartir  recursos con otros procesos  por lo que se permitir   que consuma muchos recursos del sistema   4 1 5  Requisitos del sistema software  La aplicaci  n deber   cumplir los siguiente requisitos del sistema     Deber   ser multiplataforma  al menos en los siguiente sistemas     e Microsoft Windows     e GNU Linux  usando la distribuci  n Ubuntu 12 10 como principal sistema para pruebas       El c  digo con el que se desarrolle la aplicaci  n no debe ser dependiente del sistema en el que se  desarrolle     a El c  digo debe ser mantenible y f  cilmente ampliable para futuras versiones     4 2  Modelo de casos de uso    Para describir los distintos comportamientos que tendr   el sistema  usaremos el lenguaje de modelado  de sistemas UML  que representa los requisitos funcionales del sistema  centrando en que hace y no  c  mo lo hace     4 2 1  Diagrama de los casos de uso    En primer lugar mostramos el modelo de casos de uso  figura 4 5   que representa la funcionalidad  completa de la aplicaci  n  Se ha usado el siguiente esquema     1  Identificar los usuarios del sistema y los roles que pueden tener     2  Para cada rol  identificar las distintas formas de interactuar en el sistema  En el caso de F  tbol  Es As   existe un   nico rol de acceso a la aplicaci  n  por lo que la especificaci  n del usuario ser      nica     3  Creaci  n de los casos de uso para todos los objetivos que queramos cumplir     4  Estructurar dichos casos de uso     17    J
26. all of the same material does not give you any rights to use it     10  FUTURE REVISIONS OF THIS LICENSE    The Free Software Foundation may publish new  revised versions of the GNU Free Documentation  License from time to time  Such new versions will be similar in spirit to the present version  but may  differ in detail to address new problems or concerns  See http   www gnu org copyleft     Each version of the License is given a distinguishing version number  If the Document specifies that a  particular numbered version of this License    or any later version    applies to it  you have the option of  following the terms and conditions either of that specified version or of any later version that has been  published  not as a draft  by the Free Software Foundation  If the Document does not specify a version  number of this License  you may choose any version ever published  not as a draft  by the Free Software  Foundation  If the Document specifies that a proxy can decide which future versions of this License can  be used  that proxy   s public statement of acceptance of a version permanently authorizes you to choose  that version for the Document     11  RELICENSING       Massive Multiauthor Collaboration Site     or    MMC Site     means any World Wide Web server that  publishes copyrightable works and also provides prominent facilities for anybody to edit those works  A  public wiki that anybody can edit is an example of such a server  A    Massive Multiauthor Collaborati
27. alled    Opaque       Examples of suitable formats for Transparent copies include plain ASCII without markup  Texinfo input  format  LaTeX input format  SGML or XML using a publicly available DTD  and standard conforming  simple HTML  PostScript or PDF designed for human modification  Examples of transparent image  formats include PNG  XCF and JPG  Opaque formats include proprietary formats that can be read and  edited only by proprietary word processors  SGML or XML for which the DTD and or processing tools  are not generally available  and the machine generated HTML  PostScript or PDF produced by some  word processors for output purposes only    The    Title Page    means  for a printed book  the title page itself  plus such following pages as are needed  to hold  legibly  the material this License requires to appear in the title page  For works in formats which  do not have any title page as such     Title Page    means the text near the most prominent appearance of  the work   s title  preceding the beginning of the body of the text    The    publisher    means any person or entity that distributes copies of the Document to the public    A section    Entitled XYZ    means a named subunit of the Document whose title either is precisely XYZ  or contains XYZ in parentheses following text that translates XYZ in another language   Here XYZ  stands for a specific section name mentioned below  such as    Acknowledgements        Dedications         Endorsements     or    History 
28. anscurrido del partido   A partir de este momento el juego se controlar   a trav  s de un joystick  con los siguientes controles       Equis  Pasar bal  n     Cuadrado  Golpear el bal  n de forma gradual seg  n tiempo de pulsaci  n     Start  Men   Pausa     L1  Cambiar Jugador       R1  Correr     Direcci  n  Direcci  n en la que moverse     66    Bibliograf  a     1  Mat Buckland  Programming Game AI by Example  2004  495 p  ISBN 978 1556220784    2  Gregory Junker  Pro OGRE 3D Programming  2006  284 p  ISBN 978 1590597101    3  F  Kerger  OGRE 3D 1 7 Beginner   s Guide  2010  300 p  ISBN 978 1849512480      4  VideoTutoriales Modelado  Texturizado  Rigging y Animaci  n en Blender   http   cgcookie com blender          5  P  gina oficial de la herramienta para documentar c  digo Doxygen   http    www stack nl  dimitri doxygen         6  Gu  a para la generaci  n de la memoria del Proyecto Fin de Carrera   http   osl2 uca es wikiformacion index php LaTeX_para_Proyecto_  Fin_de_Carrera                        7    a    Referencia del lenguaje de programaci  n C     http    www cplusplus com reference         8  P  gina sobre la herramienta de generaci  n de diagramas Dia   http   projects gnome org dia            9  P  gina sobre la herramienta para realizar bocetos Pencil Project   http   pencil evolus vn en US Home aspx                 10  P  gina oficial de la herramienta de edici  n de im  genes GIMP   http   www gimp org      11  Jason Gregory  Game Engine Architecture  2
29. arado       Es viable disparar              Buscar Apoyo    Figura 6 4  Implementaci  n  Flujo posesi  n    Como se puede apreciar en la imagen anterior  el flujo de ejecuci  n es seleccionado seg  n unas condi   ciones         Est   Preparado   Indica si el futbolista est   preparado para realizar alguna acci  n ya que siem   pre que controla el esf  rico debe dejar pasar un peque  o tiempo para que los movimientos no sean  inmediatos     a   Es Viable Disparar   Indica si el futbolista tiene una opci  n certera de disparar  para ello genera  tres posibles disparos  estableciendo como objetivos tres posiciones aleatorias de la porter  a  Es  viable si     e El bal  n tiene fuerza suficiente para llegar a la l  nea de gol     e El bal  n no puede ser interceptado por los futbolistas rivales  Concretamente ning  n jugador  rival incluyendo el portero  puede llegar  intersectando perpendicularmente a la l  nea recta  que une al receptor y al pasador  antes que el bal  n  Tal que     48    A     Y Yp v    Ma    Figura 6 5  Implementaci  n  Disparo viable  fuente   1         Est   Amenazado   Si hay un oponente lo suficientemente cerca del poseedor del bal  n  dentro  de un radio espec  fico desde la posici  n actual de   ste     a   Es Viable Pasar   Indica si el futbolista tiene una opci  n certera de pasar  para ello comprueba  tres posibles pases para cada receptor  El primero hacia la posici  n actual exacta del receptor  el  segundo y tercero tienen como destino las dos tan
30. decidi   usar C   como lenguaje  principal  me decant   por la biblioteca gr  fica Ogre3D    sta es una biblioteca multiplataforma de c  digo  abierto para C   que permite a los desarrolladores crear  manejar y mostrar escenas tridimensionales  utilizando aceleraci  n por hardware  Como ventaja principal  uso extenso uso  la gran comunidad que  tiene y la extensa documentaci  n  Adem  s de la integraci  n con software de modelado  texturizado y  animaci  n como Blender     59    Figura A 1  Herramientas utilizadas  Logo de Ogre3D    Al ser una biblioteca orientada a objetos su manejo es bastante sencillo representando la escena como  un   rbol  Otra virtud es la flexibilidad que ofrece con su API y la facilidad de instalaci  n ya que se puede  encontrar en los repositorios oficiales de distribuciones como Ubuntu     A 3  F  sicas y colisiones    Se opt   por Bullet como librer  a de f  sicas y colisiones ya que es libre  multiplataforma  flexible  opti   mizada  con gran comunidad y documentaci  n  Posiblemente la biblioteca libre m  s completa  En este  proyecto se utiliza se utiliza en su mayor  a su integraci  n en el wrapper OgreBullet        PHYSICS LIBRARY    Figura A 2  Herramientas utilizadas  Logo de Bullet    A 4  Gesti  n entrada de usuario    Para detectar la entrada de usuario y manejarla  sobre todo  el joystick se opt   por OIS Object Oriented  Input System  que tambi  n cumple con ser libre  multiplataforma  flexible y eficiente     A 5  Sonido    Para llevar 
31. do   ste creo que tengo la experiencia necesaria  para afrontar otro proyecto con un resultado mucho m  s brillante     Adem  s a  adir  a que este proyecto me ha preparado para enfrentarme al mundo laboral y concreta   mente al   mbito en el que me gustar  a trabajar  teniendo una idea previa de la arquitectura  herramientas  y patrones que se utilizan a menudo para el desarrollo profesional     Puedo decir que he profundizado y consolidado bastante en el lenguaje de programaci  n c    Adem  s  he aprendido a manejar bibliotecas externas  as   como entender su documentaci  n y c  mo integrarlas en  un proyecto     57    En definitiva  este proyecto me ha hecho madurar como persona y estudiante  He aprendido a buscar  bibliograf  a  opiniones en otras personas  compartir ideas  seguir un horario y enfrentarme a un proyecto  de estas caracter  sticas     8 3  Mejoras y ampliaciones    Las posibles mejoras y ampliaciones que se podr  an a  adir al proyecto en futuras versiones  se co   mentan a continuaci  n       Modo de dos jugadores  a  adir la posibilidad de que jueguen dos jugadores el mismo partido       Modo en red  tambi  n ser  a una buena idea a  adir un modo de juego en el que pudi  semos jugar  en red contra otros oponentes       Mayor diversidad de regates  a  adir regates y animaciones que dotar  an al juego de una mejor  presencia       Crear ambiente  a  adir un estadio con personas y efectos de sonido simulando un   mbiente  futbol  stico       Grabaci  n de la
32. e  dise  aba el arte del juego  Con lo que esta etapa se subdivide a su vez en tres     e Modelado  Se trata de la composici  n del personaje sobre un boceto a papel a trav  s de  pol  gonos  intentando usar el menor n  mero de ellos para as    optimizar el rendimiento  Un  ejemplo del proceso sobre la vista lateral de la cara del futbolista        Figura 3 1  Planificaci  n  Aprendizaje modelado  cara futbolista      e Texturizado  Este proceso a su vez se subdivide en dos partes  La primera consiste en en   volver al personaje 3D sobre una manta 2D  e ir marcando con zonas cerradas qu   parte del  plano 2D corresponde a las zonas del cuerpo del futbolista  Como se puede apreciar en la  imagen siguiente        Figura 3 2  Planificaci  n  Aprendizaje texturizado seaming     Una vez conocemos ya la subvdivisi  n de islas del plano 2D se procede al texturizado como  tal        Figura 3 3  Planificaci  n  Aprendizaje texturizado     e Animaci  n  Al igual que el anterior  este proceso a su vez se subdivide en otras dos partes   La primera consiste en crear una malla con movilidad que permita usarse como esqueleto  del modelo que se ve  Adem  s cada  hueso del esqueleto debe tener un peso concreto en los  v  rtices del modelo  y algunos deber  n moverse en cadena        Figura 3 4  Planificaci  n  Aprendizaje rigging     Una vez el cuerpo reacciona de manera adecuada a los movimientos del esqueleto se crean  las animaciones realizando interpolaciones entre disntos  keyframes para
33. econdary Sections whose titles are designated  as being those of  Invariant Sections  in the notice that says that the Document is released under this License  If a section  does not fit the above definition of Secondary then it is not allowed to be designated as Invariant  The  Document may contain zero Invariant Sections  If the Document does not identify any Invariant Sections  then there are none    The    Cover Texts    are certain short passages of text that are listed  as Front Cover Texts or Back Cover  Texts  in the notice that says that the Document is released under this License  A Front Cover Text may  be at most 5 words  and a Back Cover Text may be at most 25 words    A    Transparent    copy of the Document means a machine readable copy  represented in a format whose  specification is available to the general public  that is suitable for revising the document straightforward   ly with generic text editors or  for images composed of pixels  generic paint programs or  for drawings   some widely available drawing editor  and that is suitable for input to text formatters or for automatic  translation to a variety of formats suitable for input to text formatters  A copy made in an otherwise  Transparent file format whose markup  or absence of markup  has been arranged to thwart or discourage  subsequent modification by readers is not Transparent  An image format is not Transparent if used for  any substantial amount of text  A copy that is not    Transparent    is c
34. el c  digo fuente del repositorio del juego en la forja de RedIRIS     svn checkout https    forja rediris es svn cusl5 fea  El videojuego cuenta con las siguientes dependencias       libogre dev   a libsdl1 2 dev   a libsdl mixer1 2 dev    mygui      libbullet dev    Se instalar  n las dependencias utilizando el gestor de paquetes    Posteriormente instalar OgreBullet tal y como describo en esta url   http   osl2 uca es iberogre index php Colisiones_y_F C3 ADsicas_con_OgreBullet  Una vez est  n instaladas todas las dependencias se procede a ejecutar sobre el directorio del proyecto           make    futbolesasi    63    64    Ap  ndice C    Manual de usuario    C 1  Men   principal    Desde el men   principal se podr   acceder al modo partido de F  tbol Es As   y la informaci  n sobre  los desarrolladores del proyecto        Figura C 1  Manual de usuario  Men   principal    Debe usar el rat  n para seleccionar la opci  n que desee  Adem  s se podr   silenciar la m  sica del  men   pulsado en el icono del volumen     C 2  Pantalla de juego    Una vez comencemos un partido pasaremos a la pantalla de juego     65       Figura C 2  Manual de usuario  Pantalla de juego    En la imagen anterior podemos ver las distintas partes de las que se compone la interfaz de la pantalla  de juego  A continuaci  n se describen cada una de ellas     a Marcador  en la parte superior izquierda  el marcador actual del partido     Cron  metro  en la parte superior izquierda encontramos el tiempo tr
35. es    El objeto juego est   en estado Playing     Existe un objeto de InputManager     Existe un objeto de SoccerTeam s     Existe un objeto de Player seleccionado perteneciente al equipo s   Postcondiciones      Se modifica la posici  n del objeto Player     Caso de uso  Mover futbolista  escenario 1a       Usuario   Sistema       MoverFutbolista RAPIDO        Jugador desplazado y orientado    Figura 4 14  An  lisis  Diagrama de secuencia Mover futbolista  escenario la     30    Operaci  n MoverFutbolista     Actores Jugador  sistema    Responsabilidades mueve al personaje por el mundo 3D   Precondiciones      El objeto juego est   en estado Playing      Existe un objeto de InputManager    a Existe un objeto de SoccerTeam s      Existe un objeto de Player seleccionado perteneciente al equipo s       Elusuario tiene pulsado el bot  n RI   Postcondiciones      Se modifica la posici  n del objeto Player m  s r  pido     Caso de uso  Pasar Bal  n  escenario principal      Usuario  Sistema    PasarBal  n      Bal  n impulsado    Receptor recibe       Figura 4 15  An  lisis  Diagrama de secuencia Pasar Bal  n  escenario principal     Operaci  n PasarBalon    Actores Jugador  sistema     Responsabilidades hace que el jugador pase el bal  n hacia el receptor m  s cercano en su orientaci  n  actual     Precondiciones      Existe un objeto pl de Player perteneciente al SoccerTeam s que posea el bal  n   a Existe un objeto p2 de Player perteneciente al SoccerTeam s que no posea el bal 
36. gentes a un radio espec  fico desde la posici  n  actual exacta del jugador  Tal que        Passer e  e Os  i TS     gt   Receiver  Q     ipl       Figura 6 6  Implementaci  n  Pase viable  fuente   1     Estos tres pases son viables si     e El bal  n tiene fuerza suficiente para llegar al destino     e El bal  n no puede ser interceptado por los futbolistas rivales  Concretamente ning  n jugador  rival puede llegar  intersectando perpendicularmente a la l  nea recta que une al receptor y al  pasador  antes que el bal  n     49    De todos los posibles pases considerados como viables  se elige el que tenga como destino una  posici  n m  s cercana a la porter  a contraria     Adem  s de los saltos condicionales  hay dos operaciones que describen dos comportamientos de los  futbolistas     a Buscar Apoyo  Determina el jugador que est   m  s cerca del punto de apoyo que m  s puntuaci  n  tiene en ese momento  y se le mensajea para que cambie su estado a SupportAttacker  Los puntos  de apoyo son posiciones preestablecidas que se encuentran dentro del terreno de juego tal que     Figura 6 7  Implementaci  n  Puntos de apoyo  fuente   1     La puntuaci  n se otorga seg  n     e Se puede pasar hacia esa posici  n desde la posici  n del receptor  2 puntos   e Se puede marcar desde esa posici  n  1 punto  para evitar tiros lejanos    e Lejan  a respecto del pasador  2 puntos base creciente seg  n distancia     Regatear  Permite al futbolista continuar la jugada en caso de que no teng
37. gramaci  n del mismo se ha realizado de forma indi   vidual  En cambio  otros apartados como el dise  o gr  fico  se ha contado con la colaboraci  n de otra  persona  y la m  sica se ha obtenido de Internet  concretamente de Jamendo y freeSFX  la p  gina de  m  sica libre publicadas bajo licencias Creative Commons  Los cr  ditos de juego son los siguientes     Desarrollador Alberto Cejas S  nchez    Dise  ador Gr  fico Erik Castillo  Alberto Cejas S  nchez  Blender models com      Terreno de juego  Erik Castillo      Monta  as  blender models com  a mountain village       Modelado  Dise  o  Animaci  n  Texturizado futbolistas  Alberto Cejas S  nchez     Modelado  Texturizado bal  n  Alberto Cejas S  nchez       Modelado  Texturizado porter  a  Alberto Cejas S  nchez     M  sica paper planes pilot Jamendo   freesfx co uk    Cap  tulo 3    Planificaci  n    La planificaci  n realizada para el desarrollo del proyecto  est   dividida en varias partes     3 1  Fase inicial    La primera fase consisti   en plantear la idea del proyecto  con la ayuda del tutor  Tras varias propuestas  y la deliberaci  n sobre las mismas  se decidi   realizar este proyecto debido a las motivaciones escritas  anteriormente     Tambi  n se pens   en que lenguaje se desarrollar  a el proyecto  as   como las principales bibliotecas  que se usar  an durante la realizaci  n del mismo  Buscando siempre opciones libres y multiplataforma     3 2  Fase de an  lisis    Esta etapa est   dividida principalmente e
38. gura 5 1  Dise  o  Captura de la interfaz del sistema    5 1 1  Diagrama de interacci  n entre interfaces    En la imagen que se muestra a continuaci  n podemos observar la interacci  n entre las distintas inter   faces gr  ficas que se han desarrollado para la aplicaci  n     39        Men   principal    Pantalla de Juego    Figura 5 2  Dise  o  Diagrama de interacci  n    5 2  Diagrama de clases de dise  o    Dividiremos el diagrama de clases de dise  o en dos partes  para verlo con una mayor claridad  dicha  separaci  n se basar   en el cometido de las clases que interfieran   En primer lugar mostraremos las clases encargadas de la navegaci  n entre los men  s y la pantalla de  Juego  que corresponden a los distintos estados que puede adoptar el juego         StateMachine    Owner    StateMachine lt Game gt    lt  gt          O          State lt Game gt   Currentgtate  A  ee    A    PrevipusState       A  es  SoccerTeam  aa            InputManager       Figura 5 3  Dise  o  Diagrama de clases de dise  o 1    En el segundo diagrama mostraremos todas las clases relacionas con el sistema de juego  Podremos  observar los distintos objetos que intervienen en el juego  as   como la jerarqu  a de estos  Y tambi  n todas  las clases necesarias para el correcto funcionamiento del juego     40                 speyymoddns   azerssackeidiegolo Ilegaseuyuo  Suprem    6unsau    Burssed   neganaray      eonpuaL          11e93d3 gt 133u1 UOI63Oy3WOoHOLUANY gt Y             aje3s1uafin    
39. ipal     Operaci  n PausarJuego    Actores Jugador  sistema   Responsabilidades pausa el juego y detiene todos los elementos de este   Precondiciones    El objeto juego est   en estado Playing   Postcondiciones      Se activa y se hace visible el panel de pausa     Operaci  n ReanudarJuego     Actores Jugador  sistema    Responsabilidades reanuda la partida y quita el men   de pausa   Precondiciones      El objeto juego est   en estado Playing       El partido estaba pausado   Postcondiciones      Se desactiva el panel de pausa y se hace invisible     28    Caso de uso  Pausar  escenario    b     Pausarjuego      Pantalla de pausa    VolverMenuPrincipal       CambiarEstado Menu principal        Figura 4 12  An  lisis  Diagrama de secuencia  escenario b     Operaci  n VolverMenuPrincipal      Actores Jugador  sistema     Responsabilidades se el partido actual y se vuelve al men   principal     Precondiciones      El objeto juego est   en estado Playing       El panel de pause est   activado y visible     Postcondiciones      Se libera la memoria ocupada por los elementos del partido y se desactiva el men   de pausa     29    Caso de uso  Mover futbolista  escenario principal      Usuario   Sistema       MoverFutbolista NORMAL        Jugador desplazado y orientado    Figura 4 13  An  lisis  Diagrama de secuencia Mover futbolista  escenario principal     Operaci  n MoverFutbolista    Actores Jugador  sistema   Responsabilidades mueve al personaje por el mundo 3D     Precondicion
40. le por la l  nea de fondo   1  El portero oponente saca de puerta   3d El bal  n sale por la l  nea lateral   1  El equipo contrario saca de banda en la posici  n por la que sali   el bal  n     Caso de uso  Ver Cr  ditos   Caso de uso Ver Cr  ditos   Descripci  n Se muestran la pantalla de cr  ditos donde se reflejan los creadores del juego   Actores Usuario   Precondiciones Ninguna    Postcondiciones Ninguna    Escenario principal    1  El sistema muestra la pantalla de cr  ditos   2  El usuario pulsa la opci  n volver   3  El sistema vuelve al men   principal     Extensiones     flujo alternativo       a El usuario cierra la ventana de la aplicaci  n y sale de la aplicaci  n    Caso de uso  Salir   Caso de uso Salir   Descripci  n El usuario desea cerrar la aplicaci  n   Actores Usuario   Precondiciones Ninguna   Postcondiciones Se sale de la aplicaci  n   Escenario principal    1  El usuario desea salir de la aplicaci  n y pulsa la opci  n salir del men   principal     2  El sistema cierra la aplicaci  n   Extensiones     flujo alternativo       a El usuario cierra la ventana de la aplicaci  n y sale de la aplicaci  n    22    4 3  Modelo conceptual de datos    Este apartado del an  lisis sirve para especificar los requisitos del sistema y las relaciones est  ticas que  existen entre ellos     Para este fin se utiliza como herramienta los diagramas de clase  En estos diagramas se representan  las clases de objetos  las asociaciones entre dichas clases  los atributos que c
41. lt Bweg gt ayersAyrug NoTABAd 4ay gt yeds  qa  essaw welbaja     T    s  bess  wp    e1  q          Sze Ss 1eqo19       Joyeinsjeyyodsynoddns       4adaayleog       41    I    uesllsmaosl aaa a A Pare ee Pate    uo  634           Ayyu3aseg    En ambos diagramas de clases de pueden apreciar un conjuntos de clases que no est  n relacionadas  con ninguna otra del diagrama  Estas clases a las que nos referimos siguen un patr  n Singleton  que  permite que cualquier clases pueda acceder a ella desde cualquier parte del sistema  S  lo existir   una    nica instancia de cada una de las clases Singleton  que se crear   en la primera llamada que se realice a  ellas     A continuaci  n  se muestra una lista con las diferentes clases necesarias para la realizaci  n de sistema   Junto a cada una de las clases habr   una peque  a descripci  n sobre la labor que desempe  a cada una     Game Clase principal de la aplicaci  n  encargada de inicializar el sistema y el flujo entre unos apartados  y otros     StateMachine Clase con las necesidades b  sicas de una m  quina de estados para el juego en si   EntityStateMachine Clase con las necesidades b  sicas de una m  quina de estados para los jugadores   State Clase con las necesidades b  sicas de los estados del juego o los personajes    Playing Clase encargada de gestionar el juego del partido    MainMenu Clase que gestiona el men   principal    Credits Clase que gestiona el men   de selecci  n de personaje    Base Entity Clase virtual que re
42. ma de secuencia Ment principal  escenario 2b     Operaci  n SeleccionarSalir      Actores Jugador  sistema     Responsabilidades Salir de ment principal y salir de la aplicaci  n    Precondiciones      El aut  mata juego est   en estado  MainMenu        Postcondiciones      Se elimina el objeto       Game        26    Caso de uso  Jugar partido  escenario principal      Usuario  Sistema    Pantallajuego      Interactuar      End Of Match    CambiarEstado Menu principal        Figura 4 10  An  lisis  Diagrama de secuencia Jugar partido  escenario principal     Operaci  n PantallaJuego     Actores Jugador  sistema    Responsabilidades carga  muestra e inicia la pantalla de juego   Precondiciones Ninguna   Postcondiciones      Se crea un objeto de Playing      Se crea un objeto de SoccerPitch      Se crea un objeto de Player por cada futblista especializando en los porteros en GoalKeeper     Se crea un objeto de Ball    a Se crean dos objetos de Goal     Operaci  n Interactuar     Actores Jugador  sistema    Responsabilidades permite al jugador interactuar con el mundo 3D y los elementos que este posee   Precondiciones    a El juego est   en estado Playing     Existen objetos Player  estando uno de ellos seleccionado por el Jugador     Postcondiciones Ninguna     27    Caso de uso  Pausar  escenario principal      Usuario  Sistema    Pausarjuego      Pantalla de pausa    Reanudarjuego      Vuelve al juego       Figura 4 11  An  lisis  Diagrama de secuencia Pausar escenario princ
43. me of the original author or publisher of that section if known  or else a unique number  Make the  same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined  work    In the combination  you must combine any sections Entitled    History    in the various original documents   forming one section Entitled    History     likewise combine any sections Entitled    Acknowledgements      and any sections Entitled    Dedications     You must delete all sections Entitled    Endorsements        6  COLLECTIONS OF DOCUMENTS    You may make a collection consisting of the Document and other documents released under this License   and replace the individual copies of this License in the various documents with a single copy that is  included in the collection  provided that you follow the rules of this License for verbatim copying of  each of the documents in all other respects    You may extract a single document from such a collection  and distribute it individually under this  License  provided you insert a copy of this License into the extracted document  and follow this License  in all other respects regarding verbatim copying of that document     7  AGGREGATION WITH INDEPENDENT WORKS    A compilation of the Document or its derivatives with other separate and independent documents or  works  in or on a volume of a storage or distribution medium  is called an    aggregate    if the copyright  resulting from the compilation is not used t
44. n   trados     Tambi  n esta disponible toda la documentaci  n del proyecto generada con doxygen  Aqu   un enlace  al directorio de dicha documentaci  n     https    forja rediris es plugins scmsvn viewcvs php trunk doc html  root   cusl5 fea    6 1  F  sicas y Colisiones    La detecci  n de las colisiones es una de las cosas m  s b  sicas de la mayor  a de los juegos y m  s a  n  en los deportivos ya que la pelota cobra especial protagonismo al interactuar con todos los jugadores  el  campo y las porter  as  Adem  s  hay que tratar las colisiones entre futbolistas y de   stos con los postes  de la porter  a     Debido a la complejidad del espacio 3D en el que hay que tener en cuenta factores m  s complejos co    mo el bote del bal  n o la direcci  n en la que sale despedido   ste cuando choca con la porter  a  se opt   por  Bullet OgreBullet de manera que todo esto se manejase autom  ticamente  Sin embargo  esta liberaci  n  de la responsabilidad de tratar estas colisiones introduce una dificultad adicional  la integraci  n de la  librer  a con el sistema y la interactuaci  n con las imprevisibles actividades realizadas por el usuario   El principal problema encontrado es la necesidad de conocer c  anto tiempo tardar   el bal  n en alcanzar  una posici  n si se le aplica una fuerza  Esta funcionalidad no es soportada por ninguna librer  a de f  sicas  libre por lo que al resultar imposible aproximarlo por f  rmulas matem  ticas  se tuvo que crear un mundo  f  sico paralelo y
45. n  lisis  Diagrama de casos de uso    2    2 2 Comm 18  An  lisis  Diagrama de clases conceptuales          o    oo    o        23  An  lisis  Diagrama de secuencia Men   principal  escenario principal             24  An  lisis  Diagrama de secuencia Men   principal  escenario 2a        2    22200  25  An  lisis  Diagrama de secuencia Men   principal  escenario 20                 26  An  lisis  Diagrama de secuencia Jugar partido  escenario principal              27  An  lisis  Diagrama de secuencia Pausar escenario principal                  28  An  lisis  Diagrama de secuencia  escenario b             ooo    oo        29  An  lisis  Diagrama de secuencia Mover futbolista  escenario principal            30  An  lisis  Diagrama de secuencia Mover futbolista  escenario la                30  An  lisis  Diagrama de secuencia Pasar Bal  n  escenario principal               31  An  lisis  Diagrama de secuencia Pasar Bal  n  escenario 2a                  32  An  lisis  Diagrama de secuencia Pasar Bal  n  escenario 3a                  33  An  lisis  Diagrama de secuencia Chutar Bal  n  escenario principal              34  An  lisis  Diagrama de secuencia Chutar Bal  n  escenario 3a                  35  An  lisis  Diagrama de secuencia Chutar Bal  n  escenario 30                  36  An  lisis  Diagrama de secuencia Chutar Bal  n  escenario 3d                  37  An  lisis  Diagrama de secuencia Cr  ditos escenario principal                 38  Dise  o  Captura de la interfaz del si
46. n del proyecto y las distintas etapas que esta com   puesto el mismo       An  lisis  fase de an  lisis del sistema  empleando la metodolog  a seleccionada  Se definir  n los  requisitos funcionales del sistema  diagramas de caso de uso  diagramas de secuencia y contrato  de las operaciones       Dise  o  realizaci  n del dise  o del sistema  diagramas de secuencia y clases aplicadas al dise  o     Implementaci  n  aspectos m  s relevantes durante la implementaci  n del proyecto  Y problemas  que han aparecido durante el desarrollo de este     Pruebas y validaciones  pruebas realizada a la aplicaci  n  con el fin de comprobar su correcto  funcionamiento y cumplimiento de las expectativas     Conclusiones  conclusiones obtenidas tras el desarrollo de la aplicaci  n     Ap  ndices     e Herramientas utilizadas  explicaci  n de todas las herramientas usadas a lo largo del desar   rollo del proyecto    e Manual de instalaci  n  manual para la correcta instalaci  n del proyecto en el sistema    e Manual de usuario  manual de usuario para el correcto uso de la aplicaci  n  nuevos estados  a los futbolistas     a Bibliograf  a  libros y referencias consultado durante el desarrollo del proyecto     a Licencia GNU GFDL  texto completo sobre la licencia GNU GFDL     Cap  tulo 2    Descripci  n general del proyecto    2 1  Descripci  n    El proyecto consiste en un juego sencillo y din  mico de f  tbol en tres dimensiones  con equipos de 5  Vs 5  en el que el jugador deber   competir co
47. n el mismo ofreciendo sus opiniones sobre aspectos que deber  an ser modificados o  errores que aparec  an a lo largo de la ejecuci  n del juego     Se hicieron pruebas sobre la interfaz a medida que se implementaba el men   de juego  donde se  probaban la reacci  n de esto ante situaciones para las que no estaban pensado su uso   En definitiva  la organizaci  n de los casos de pruebas fue la siguiente   1  Tras finalizar la implementaci  n de cada m  dulo  se realizaban pruebas unitarias sobre estos     2  A medida que distintos m  dulo que anteriormente probados individualmente  deb  an colaborar  entre ellos  se llevaban a cabo pruebas de integraci  n     3  Con las distintas versiones jugables se realizaban pruebas de jugabilidad     4  Pruebas de interfaz sobre el men   que se implement       7 1  Pruebas unitarias    Esta pruebas se realizaron junto a la fase de implementaci  n  conforme se implementaban nuevos  m  dulos necesarios para la aplicaci  n se realizaban pruebas individuales sobre estos m  dulos  De esta  forma se buscaban todos los caminos posibles que podr  a dar cada m  dulo  teniendo en cuenta aquellos  que fueran m  s predispuesto a fallos     53    De esta forma todas las sentencias se ejecutaban como m  nimo una vez y los posibles fallos se encon   traban de una forma m  s sencilla  Por lo que tambi  n eran m  s f  cil localizar donde estaba el problema  y afrontar la soluci  n de este     7 2  Pruebas de integraci  n    Conforme aparec  an nuevos m  d
48. n las dos partes siguiente       Especificaci  n de los requisitos  estudio de los requisitos que deber   cumplir el juego       Recurso necesarios  recursos necesarios que deberemos usar durante el desarrollo del proyecto     3 3  Fase Aprendizaje    Dado que el proyecto abarca un campo que hasta ahora no hab  a tocado como es el mundo de los  videojuegos  ten  a que aprender los principales conceptos de   stos  as   como cada una de las librer  as  empleadas  que a su vez inclu  an conceptos matem  ticos y f  sicos  Paralelamente deb  a aprender a mod   elar  texturizar y animar en 3D    Esta fase se extendi   a lo largo de bastante tiempo y para la cual le   varios libros  intent   entender c  digo  ya escrito y ver videotutoriales acerca del manejo en general y en particular de herramientas 3D   Por lo tanto esta fase se dividi   en tres etapas principales       Aprendizaje del desarrollo de videojuegos  Al no tener experiencia previa en este campo decid    adentrarme leyendo  1   que adem  s conten  a c  digo fuente para a  adirle un punto m  s pr  ctico   Y es que este libro toca muchos palos de los videojuegos  desde la arquitectura de   ste para hacerla  funcional y extensible como la propia inteligencia artificial con muchas ideas para aplicar sobre  un juego de f  tbol     a Aprendizaje del arte  fue la tarea m  s ardua  ya que no hab  a tenido ning  n conctacto antes con  los conceptos  ni con las herramientas  Para optimizar el tiempo  decid   aprender a la vez qu
49. ntra el ordenador        Figura 2 1  Descripci  n  Logo FEA    2 2  Caracter  sticas del videojuego    El videojuego ofrece una alternativa libre y gratuita para jugar a un juego de f  tbol en tres dimen   siones  teniendo en cuenta que en los repositorios oficiales de distribuciones UNIX como Ubuntu no  existe ninguna opci  n     El   nico modo de juego disponible es jugador contra ordenador  que auna la complejidad de ambos  y su interacci  n en el flujo de la ejecuci  n del videojuego  Este modo de partido r  pido tendr   una  duraci  n de 5 minutos     2 2 1  Elementos de juego    En esta secci  n se har   una peque  a descripci  n de los distintos elementos que encontraremos a lo  largo del juego     Futbolistas    Los elementos b  sicos del juego  son los encargados de interactuar entre s   y con el bal  n  Dependien   do de si pertenecen al equipo local o al equipo visitante emplear  n un uniforme u otro y ser  n manejados  por el jugador o el ordenador  Cada uno podr   tener caracter  sticas propias tales como la velocidad o la  potencia de golpeo        Figura 2 2  Descripci  n  Futbolista de FEA     Bal  n    Un elemento b  sico en el f  tbol y que en este proyecto podr   interactuar con los futbolistas y con el  entorno  reaccionando cuando sale del campo  entra en la porter  a o choca con un poste de   sta     r  O    Figura 2 3  Descripci  n  Bal  n FEA  modelos High y Low Poly       gt        2 3  Colaboradores    Todo el apartado del proyecto referente a la pro
50. o A   Equipo B      ARES                 Terreno de Juegc       Figura 4 4  An  lisis  Boceto de men   de pausa    4 1 2  Requisitos funcionales    Los requisitos funcionales que el sistema debe ofrecer son los siguientes     a Salir de la aplicaci  n desde cualquier ventana     Ver cr  ditos     Jugar     Pausar el juego     Pasar bal  n     Chutar bal  n     Mover Jugador     Los distintos tipos de jugadores son     Humano  es el controlado por una persona    M  quina  controlado por el ordenador   Existe un   nico modo de juego     a Partido r  pido  consiste en la realizaci  n de un partido de 5 minutos  disputado entre el ordenador  y la m  quina     16    4 1 3  Requisitos de rendimiento    El rendimiento de la aplicaci  n debe ser tal que permita un desempe  o agradable de juego       Por lo que la respuesta a las acciones realizadas por el usuario deben ser respondidas lo m  s r  pido  posible  sacrificando en el caso de que sea necesario el consumo de la memoria principal       Lainteligencia artificial debe estar optimizada de forma que no se ralentice la partida en el tiempo  dedicado a los c  lculos necesarios para tomar decisiones   4 1 4  Restricciones de dise  o    Como comento en uno de los puntos del apartado anterior el tiempo de respuesta tiene que primar  sobre el consumo de memoria principal o secundaria  Esta ser   la principal restricci  n de dise  o que  tendr   nuestra aplicaci  n     Los videojuegos est  n pensados como aplicaci  n principal  de form
51. o limit the legal rights of the compilation   s users beyond what  the individual works permit  When the Document is included in an aggregate  this License does not apply  to the other works in the aggregate which are not themselves derivative works of the Document    If the Cover Text requirement of section 3 is applicable to these copies of the Document  then if the  Document is less than one half of the entire aggregate  the Document   s Cover Texts may be placed  on covers that bracket the Document within the aggregate  or the electronic equivalent of covers if the  Document is in electronic form  Otherwise they must appear on printed covers that bracket the whole  aggregate     8  TRANSLATION    Translation is considered a kind of modification  so you may distribute translations of the Document  under the terms of section 4  Replacing Invariant Sections with translations requires special permis   sion from their copyright holders  but you may include translations of some or all Invariant Sections  in addition to the original versions of these Invariant Sections  You may include a translation of this  License  and all the license notices in the Document  and any Warranty Disclaimers  provided that you  also include the original English version of this License and the original versions of those notices and  disclaimers  In case of a disagreement between the translation and the original version of this License or  a notice or disclaimer  the original version will prevail   
52. omponen las clases y las  relaciones de integridad     4 3 1  Diagrama de clases conceptuales    En la siguiente imagen podemos ver el diagrama de clases asociado a los requisitos obtenidos  Se  muestran las clases relacionadas con la pantalla de juego y su relaci  n con el men   principal y cr  ditos  as   como las clases principales que intervienen en la gesti  n de la pantalla de juego     i Agent 7   Juego   Maquina de Estados seat  M  quinaEstados lt Juego gt                  2    Entidad Estado lt Juego gt   CAS ES  A A    Porteria _2      E      Region                        Controlador       ComportamientosDirigidos   1 Jugador  er     E    Owner    StateMachine  1    Portero MaquinaEstadosEntidades lt Jugador gt   lt  gt  3 EstadoEntidad lt Jugador gt           Figura 4 6  An  lisis  Diagrama de clases conceptuales    4 4  Modelo de comportamiento del sistema    El modelo de comportamiento especifica como debe actuar el sistema  El sistema es el que engloba  todos los objetos  y el modelo consta de dos partes       Diagramas de secuencias del sistema  muestran la secuencia de eventos entre el usuario y el sis   tema       Contrato de las operaciones del sistema  describen el efecto que producen las operaciones en el  sistema   4 4 1  Diagramas de secuencia y contrato de las operaciones del sistema     No todos los posibles diagramas de secuencia aparecer  n  nos centraremos en los m  s importantes   los que implican alg  n tipo de cambio en el sistema     Caso de uso
53. on      or    MMC     contained in the site means any set of copyrightable works thus published on the MMC  site       CC BY SA    means the Creative Commons Attribution Share Alike 3 0 license published by Creative  Commons Corporation  a not for profit corporation with a principal place of business in San Francisco   California  as well as future copyleft versions of that license published by that same organization      Incorporate    means to publish or republish a Document  in whole or in part  as part of another Docu   ment    An MMC is    eligible for relicensing    if it is licensed under this License  and if all works that were first  published under this License somewhere other than this MMC  and subsequently incorporated in whole  or in part into the MMC   1  had no cover texts or invariant sections  and  2  were thus incorporated  prior to November 1  2008    The operator of an MMC Site may republish an MMC contained in the site under CC BY SA on the  same site at any time before August 1  2009  provided the MMC is eligible for relicensing     ADDENDUM  How to use this License for your documents    74    To use this License in a document you have written  include a copy of the License in the document and  put the following copyright and license notices just after the title page     Copyright    YEAR YOUR NAME  Permission is granted to copy  distribute and or modify  this document under the terms of the GNU Free Documentation License  Version 1 3 or  any later versi
54. on published by the Free Software Foundation  with no Invariant Sections   no Front Cover Texts  and no Back Cover Texts  A copy of the license is included in the  section entitled    GNU Free Documentation License        If you have Invariant Sections  Front Cover Texts and Back Cover Texts  replace the    with     Texts      line with this     with the Invariant Sections being LIST THEIR TITLES  with the Front Cover Texts being  LIST  and with the Back Cover Texts being LIST     If you have Invariant Sections without Cover Texts  or some other combination of the three  merge those  two alternatives to suit the situation    If your document contains nontrivial examples of program code  we recommend releasing these exam   ples in parallel under your choice of free software license  such as the GNU General Public License  to  permit their use in free software     75    
55. or     3a El bal  n es interceptado por un miembro del equipo contrario   1  El oponente controla el bal  n   3b El bal  n es interceptado por otro miembro del mismo equipo     1  El otro jugador controla el bal  n     Caso de uso  Chutar Bal  n   Caso de uso Chutar Bal  n   Descripci  n El usuario desplaza al futbolista seleccionado por el terreno de juego    Actores Usuario   Precondiciones Se est   jugando un partido  hay un futbolista seleccionado y   ste posee el bal  n   Postcondiciones Ninguna    Escenario principal    1  El usuario pulsa el bot  n cuadrado del joystick durante un tiempo concreto     2  El sistema ejerce una fuerza sobre el bal  n  acorde al tiempo que se ha mantenido pulsado  el bot  n cuadrado  en la direcci  n en la que est   mirando el lanzador     3  El portero contrario intercepta el disparo y controla el esf  rico   Extensiones     flujo alternativo       a El usuario cierra la ventana de la aplicaci  n y sale de la aplicaci  n    21    3a El bal  n es interceptado por un jugador de campo y su potencia o altura impiden el control  por parte del futbolista   1  Elsistema hace rebotar al bal  n en la orientaci  n adecuada     3b EI bal  n es interceptado por un jugador de campo y su potencia o altura permiten el control  por parte del futbolista     1  El futbolista controla el bal  n   3c El bal  n entra en la porter  a     1  El marcador del equipo del lanzador se incrementa en una unidad y el equipo contrario  saca de centro     3d El bal  n sa
56. ovimiento de la cruceta del joystick   2  El sistema mueve al futbolista en la direcci  n seleccionada     3  El sistema comprueba que no ha colisionado con otro cuerpo   Extensiones     flujo alternativo       a El usuario cierra la ventana de la aplicaci  n y sale de la aplicaci  n  la El usuario pulsa el bot  n R1 al mismo tiempo que la direcci  n   1  El futbolista se mueve a mayor velocidad en la direcci  n indicada   3a El sistema detecta que ha colisionado con un oponente  compa  ero o porter  a     1  El sistema corrige la posici  n del futbolista     20    Caso de uso  Pasar Bal  n   Caso de uso Pasar Bal  n   Descripci  n El usuario ordena al futbolista seleccionado a ejecutar un pase en su orientaci  n actual   Actores Usuario   Precondiciones Se est   jugando un partido  hay un futbolista seleccionado y   ste posee el bal  n   Postcondiciones Ninguna    Escenario principal    1  El usuario pulsa el bot  n X del joystick     2  El sistema ejerce una fuerza sobre el bal  n en la direcci  n del miembro del mismo equipo  que recibe  siendo   ste el m  s pr  ximo a la orientaci  n actual del pasador     3  El receptor controla el bal  n   Extensiones     flujo alternativo       a El usuario cierra la ventana de la aplicaci  n y sale de la aplicaci  n    2a El sistema detecta que no hay ning  n miembro del equipo cercano a la orientaci  n actual del  pasador     1  El sistema ejerce una fuerza sobre el bal  n en la direcci  n a la que actualmente est    mirando el pasad
57. po cercanas a su porter  a        Figura 6 8  Implementaci  n  Atacar y Defender       Balon parado  Posiciona a los futbolistas en las regiones adecuadas seg  n el tipo de saque  puerta   centro  banda  corner   Adem  s deshabilita deshabilita el resto de comportamientos hasta que no  se saque     51       Figura 6 9  Implementaci  n  Bal  n Parado     52    Cap  tulo 7    Pruebas    El dise  o de casos de pruebas para un videojuego es algo complicado  no s  lo para F  tbol Es As     si no para la mayor  a de los distintos tipos de videojuegos existentes  Esto se debe a que estamos en  un escenario simulando como interact  an much  simos elementos entre s    Pero las pruebas son algo  necesario si deseamos un software con una calidad aceptable     Todos los m  dulos que componen la aplicaci  n han sido probados individualmente  como pueden ser  aquellos m  dulos encargados de la inteligencia artificial o la gesti  n de los partidos     Tambi  n se realizaron muchas pruebas de integraci  n  ya que hab  a m  dulos  una vez probado en  solitario  deb  an realizar distintas acciones junto con otros m  dulos  Como pueden ser las colisiones y  f  sicas o la entrada del usuario  Esto requer  a de mucho esfuerzo ya que se empleaban librer  as externas  sumado a que la entrada del usuario es imprevisible y su interactuaci  n con el entorno debe ser aceptable     Otras pruebas que se realizaron fueron las de jugabilidad  tanto yo como personas ajenas al desarrollo  de proyecto probaro
58. presenta las entidades del juego    Ball Clase que representa el bal  n    Goal Clase que representa la porter  a    Player Clase que gestiona al futbolista    GoalKeeper Clase especializada de Player para gestionar lo exclusivo de los porteros   InputManager Clase encargada de manejar la entrada del usuario    ParamLoader Clase encargada de cargar par  metros predefinidos en un documento de texto   SoccerTeam Clase que gestiona un equipo    MessageDispatcher Clase encargada de enviar mensajes entre entidades del juego    Region Clase que representa cada una de las zonas en las que est   subdivido el terreno de juego   SteeringBehaviors Clase encargada de gestionar los comportamientos de los futbolistas    Song Clase para representar las canciones que suenen en el men   principal    Telegram Clase que representa el contenido de un mensaje entre entidades    Attacking Clase que gestiona el comportamiento de un equipo de f  btol cuando est   atacando   Deffending Clase que gestiona el comportamiento de un equipo de f  btol cuando est   defendiendo     PrepareForKickOff Clase que gestiona el comportamiento de un equipo de f  btol cuando hay un saque  de banda  corner  centro o porter  a     42    SupportSpot Clase que que representa los puntos de apoyo imaginarios dibujados sobre el terreno de  Juego     SoccerPitch Clase que que representa el terreno de juego    GlobalPlayerState Clase que que representa el estado global de un futbolista    Resting Clase que que representa el e
59. r Texts  you must enclose  the copies in covers that carry  clearly and legibly  all these Cover Texts  Front Cover Texts on the front  cover  and Back Cover Texts on the back cover  Both covers must also clearly and legibly identify you as  the publisher of these copies  The front cover must present the full title with all words of the title equally  prominent and visible  You may add other material on the covers in addition  Copying with changes  limited to the covers  as long as they preserve the title of the Document and satisfy these conditions  can  be treated as verbatim copying in other respects    If the required texts for either cover are too voluminous to fit legibly  you should put the first ones listed   as many as fit reasonably  on the actual cover  and continue the rest onto adjacent pages    If you publish or distribute Opaque copies of the Document numbering more than 100  you must either  include a machine readable Transparent copy along with each Opaque copy  or state in or with each  Opaque copy a computer network location from which the general network using public has access to  download using public standard network protocols a complete Transparent copy of the Document  free  of added material  If you use the latter option  you must take reasonably prudent steps  when you begin  distribution of Opaque copies in quantity  to ensure that this Transparent copy will remain thus accessible  at the stated location until at least one year after the last time 
60. ra el men   de inicio de  F  tbol Es Asi  as   como todas las opciones generales del juego disponibles  que son las siguientes       Jugar    Creditos      Salir    En este men   y en los siguiente que se describan se usar   el rat  n para navegar por ellos y solo  ser   necesario hacer click sobre la opci  n deseada para acceder a ella     13    F  tbol Es As           Jugar    Cr  ditos      Salir                     Figura 4 1  An  lisis  Boceto del men   principal    Ventana de cr  ditos En esta pantalla  figura 4 2 se mostrar  n los creadores de F  tbol Es As    Ten   dremos a nuestra disposici  n un bot  n para volver al men   principal     F  tbol Es As      Cr  ditos    Dise  o y Programaci  n     Alberto Cejas S  nchez    Nombre Apellido1 Apellido2       Volver al Men      Sonido     Nombre Apellido1 Apellido2       Figura 4 2  An  lisis  Boceto de la pantalla de cr  ditos    Ventana de juego Ventana principal de todo el juego  figura 4 3   Mostrar   el partido actual que se est      14    dispuntando  as   como el marcador y el cron  metro  Se podr   acceder al men   de pausa pusando  el bot  n pause del joystick           F  tbol Es As   olx   EA po  0 0          Terreno de Juegc       Figura 4 3  An  lisis  Boceto de ventana de juego    Ventana de pausa Unicamente accesible desde la ventana de juego  figura 4 4   Esta nos permitir    detener el juego en curso  siendo posible reanudar el juego o volver al men   principal     15    F  tbol Es As    ox          Equip
61. rsion  as the publisher     Preserve all the copyright notices of the Document       Add an appropriate copyright notice for your modifications adjacent to the other copyright notices     mi  ee  Mo       Include  immediately after the copyright notices  a license notice giving the public permission to  use the Modified Version under the terms of this License  in the form shown in the Addendum  below     G  Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given  in the Document   s license notice     71    H  Include an unaltered copy of this License     I  Preserve the section Entitled    History     Preserve its Title  and add to it an item stating at least the  title  year  new authors  and publisher of the Modified Version as given on the Title Page  If there  is no section Entitled    History    in the Document  create one stating the title  year  authors  and  publisher of the Document as given on its Title Page  then add an item describing the Modified  Version as stated in the previous sentence     J  Preserve the network location  if any  given in the Document for public access to a Transparent  copy of the Document  and likewise the network locations given in the Document for previous  versions it was based on  These may be placed in the    History    section  You may omit a network  location for a work that was published at least four years before the Document itself  or if the  original publisher of the version it refer
62. s instruction or reference     1  APPLICABILITY AND DEFINITIONS    This License applies to any manual or other work  in any medium  that contains a notice placed by  the copyright holder saying it can be distributed under the terms of this License  Such a notice grants  a world wide  royalty free license  unlimited in duration  to use that work under the conditions stated  herein  The    Document     below  refers to any such manual or work  Any member of the public is a  licensee  and is addressed as    you     You accept the license if you copy  modify or distribute the work in  a way requiring permission under copyright law    A    Modified Version    of the Document means any work containing the Document or a portion of it   either copied verbatim  or with modifications and or translated into another language    A    Secondary Section    is a named appendix or a front matter section of the Document that deals  exclusively with the relationship of the publishers or authors of the Document to the Document   s overall  subject  or to related matters  and contains nothing that could fall directly within that overall subject    Thus  if the Document is in part a textbook of mathematics  a Secondary Section may not explain any  mathematics   The relationship could be a matter of historical connection with the subject or with related  matters  or of legal  commercial  philosophical  ethical or political position regarding them     69    The    Invariant Sections    are certain S
63. s mejores jugadas para repetirlas  implementar una opci  n que grabara las  jugadas de gol almacen  ndolas en un fichero  y as   poder visualizarlas posteriormente     58    Ap  ndice A    Herramientas utilizadas    A 1  Lenguaje de programaci  n    Una de las decisiones m  s importante que consideraba a la hora de desarrolla el proyecto  era la  elecci  n de un lenguaje de programaci  n adecuado y que cumpliera todas las expectativas necesarias   Opt   por C   debido a     1  Lenguaje que hemos visto y aprendido a lo largo de toda la carrera  y con m  s profundidad en la  asignatura de Programaci  n Orientada a Objetos  Por lo que ya se ten  a una soltura y conocimien   tos previos que no se tenfan con ning  n otro lenguaje     2  Lenguaje compilado por lo que su velocidad y eficiencia es mucho mayor que la de otros lengua   jes  Aspectos muy a tener en cuenta a la hora de desarrollar un videojuego     3  Multiplataforma    4  Conjunto de bibliotecas est  ndar muy amplias y muy bien documentadas     Esta eficiencia y velocidad se hace aun m  s necesaria en el desarrollo de videojuegos 3D ya que  demandan altas exigencias     A 2  Motor de renderizado    Tras la decisi  n final del lenguaje de programaci  n que se usarfa a lo largo de todo el desarrollo  del proyecto  la siguiente decisi  n de gran importancia que se deb  a tomar  era la elecci  n demotor de  renderizado que usarfamos en F  tbol es Ast     En este caso se tuvo clara la elecci  n desde el momento en el que se 
64. s to gives permission     K  For any section Entitled    Acknowledgements    or    Dedications     Preserve the Title of the section   and preserve in the section all the substance and tone of each of the contributor acknowledgements  and or dedications given therein     L  Preserve all the Invariant Sections of the Document  unaltered in their text and in their titles   Section numbers or the equivalent are not considered part of the section titles     M  Delete any section Entitled    Endorsements     Such a section may not be included in the Modified  Version     N  Do not retitle any existing section to be Entitled    Endorsements    or to conflict in title with any  Invariant Section     O  Preserve any Warranty Disclaimers     If the Modified Version includes new front matter sections or appendices that qualify as Secondary  Sections and contain no material copied from the Document  you may at your option designate some  or all of these sections as invariant  To do this  add their titles to the list of Invariant Sections in the  Modified Version   s license notice  These titles must be distinct from any other section titles    You may add a section Entitled    Endorsements     provided it contains nothing but endorsements of your  Modified Version by various parties   for example  statements of peer review or that the text has been  approved by an organization as the authoritative definition of a standard    You may add a passage of up to five words as a Front Cover Tex
65. stado de no hacer nada en un futbolista    Walking Clase que que representa el estado de andar en un futbolista    ChaseBall Clase que que representa el estado de perseguir el bal  n en un futbolista     KickBall Clase que que representa el estado de intentar disparar a puerta en un futbolista     Dribble Clase que que representa el estado de regatear en un futbolista    SupportAttacker Clase que que representa el estado de apoyar desmarcarse en un futbolista    KickOff Clase que que representa el estado de sacar de banda corner centro porter  a en un futbolista   Wait Clase que que representa el estado de esperar en un futbolista     ReturnToHomeRegion Clase que que representa el estado de volver a la posici  n que ocupa en el  campo en un futbolista     ReceiveBall Clase que que representa el estado de recibir un pase en un futbolista   TendGoal Clase que que representa el estado de cubrir la porter  a en un portero   InterceptBall Clase que que representa el estado de interceptar un bal  n en un portero   Running Clase que que representa el estado de correr en un futbolista     Passing Clase que que representa el estado de pasar en un futbolista     43    44    Cap  tulo 6    Implementaci  n    Durante todo el desarrollo del proyecto  han ido aparenciendo diversas dificultades y problemas que  se debieron ir resolviendo para el correcto y continuo avance del proyecto     Por lo que en este cap  tulo se exlicar  n las distintas soluciones para los principales problemas enco
66. stema          o    oo                39  Dise  o  Diagrama de Interacci  n    lt s s a kee Erna ee 40  Dise  o  Diagrama de clases de dise  o l              oo    e           40  Dise  o  Diagrama de clases de dise  o 2          o    oo    e    ee ee 41  Implementaci  n Seek 2 444 4  feud He pa aa ee eek Sad be ws 46    6 2   6 3   6 4   6 5   6 6   6 7   6 8   6 9     AT   A 2   A 3   AA   AS   A 6     CL  C 2     Implementaci  n  Pursuit    tobera hades 2a Pho e SS ee aS Whe Ge 47  Implementaci  n  Interpose   cs s ra moaia naar et ee nen 47  Implementaci  n  Flujo posesi  n         gt   5 aia nun eran a 48  Implementaci  n  Disparo viable  fuente   1                 o a AE a   S 49  Implementaci  n  Pase viable  fuente   1    24  eae ed a don ae a a eS 49  Implementaci  n  Puntos de apoyo  fuente   1     2     2 Cum nennen 50  Implementaci  n  Atacar y Defender     2 2      CC mm onen 51  Implementaci  n  Bal  n Parado    s e   e ee ee a 52  Herramientas utilizadas  Logo de Ogre3D     LL LL LL LL LL RE 60  Herramientas utilizadas  Logo de Bullet    2    LL LL LL non 60  Herramientas utilizadas  Logo de Blender              oo    o          61  Herramientas utilizadas  Logo de Gimp          o    o    e    eee 61  Herramientas utilizadas  Logo de TEX          o    o    e    e    62  Herramientas utilizadas  Logo de Dia           o        e    e    e       62  Manual de usuario  Men   principal           o    o    e    e    e    65  Manual de usuario  Pantalla de Juego o oc 
67. t  and a passage of up to 25 words as  a Back Cover Text  to the end of the list of Cover Texts in the Modified Version  Only one passage of  Front Cover Text and one of Back Cover Text may be added by  or through arrangements made by  any  one entity  If the Document already includes a cover text for the same cover  previously added by you or  by arrangement made by the same entity you are acting on behalf of  you may not add another  but you  may replace the old one  on explicit permission from the previous publisher that added the old one    The author s  and publisher s  of the Document do not by this License give permission to use their  names for publicity for or to assert or imply endorsement of any Modified Version     5  COMBINING DOCUMENTS    You may combine the Document with other documents released under this License  under the terms  defined in section 4 above for modified versions  provided that you include in the combination all of the  Invariant Sections of all of the original documents  unmodified  and list them all as Invariant Sections of  your combined work in its license notice  and that you preserve all their Warranty Disclaimers     72    The combined work need only contain one copy of this License  and multiple identical Invariant Sections  may be replaced with a single copy  If there are multiple Invariant Sections with the same name but  different contents  make the title of each such section unique by adding at the end of it  in parentheses   the na
68. tengan  f  rmulas matem  ticas     Figura A 5  Herramientas utilizadas  Logo de IAIEX    IXT  X es un sistema de composici  n de textos que est   formado mayoritariamente por   rdenes  macros   construidas a partir de comandos de TeX  IAIFXes una herramienta pr  ctica y   til pues  a su facilidad de  uso  se une toda la potencia de TeX     A 12  Realizaci  n de diagramas  Dia    Para la realizaci  n de todos los diagramas necesarios que aparecen a lo largo de toda la memoria se  ha usado el creador de diagramas Dia     Dia es un programa de creaci  n de diagramas en GNU Linux  MacOS X  Unix y Windows  bajo la  licencia GPL  Puede ser utilizado para dibujar diferentes tipos de diagramas  Actualmente cuenta con  herramientas para dibujar diagramas entidad relaci  n  diagramas UML  diagramas de flujo  diagramas  de red  y muchos otros diagramas        Figura A 6  Herramientas utilizadas  Logo de Dia    62    Ap  ndice B    Manual de instalaci  n    B 1  Linux  Ubuntu  Desde c  digo fuente     Debido a la alta complejidad de empaquetar un proyecto en Ogre a un  deb  se procede a explicar como  instalarlo a partir del c  digo fuente     Para poder ejecutar F  tbol Es As   desde el c  digo fuente  ser   necesario la instalaci  n de varias  dependencias  para el correcto funcionamiento de la aplicaci  n     En primer lugar hay que descargar SVN  para instalarlo  ejecutamos la siguiente orden en una termi   nal     sudo apt get install subversion    En segundo lugar  debes descargar 
69. ulos  cuya implementaci  n era necesaria y a su vez estos requer  an  el uso de otro m  dulos que posteriormente hab  an sido probados individualmente  se realizaban pruebas  de integraci  n entre dichos m  dulos     Conforme se avanzaba en el desarrollo de F  tbol Es As   se realizaban pruebas de integraci  n a mayor  escala  No solo entre m  dulos del mismo sistema  sino entre varios sistemas del juego     En este apartado los principales problemas se encontraron a la hora de integrar las librer  as externas  con el sistema  sobre todo la librer  a de f  sicas y colisiones  que practicamente supusieron la mayor parte  del tiempo de pruebas     7 3  Pruebas de jugabilidad    Cada vez que estaban disponibles nuevas versiones jugables del juego  se ped  an la ayuda a personas   totalmente ajenas al desarrollo de la aplicaci  n  que probaran las distintas demos disponibles  De esta  forma cada uno de los colaboradores daba su opini  n sobre distintos aspectos como la jugabilidad   dificultad  respuesta del juego o nivel de la inteligencia artificial  Tras recopilar la informaci  n que todos  ellos proporcionaron  se proced  a a realizar los ajustes necesarios a los distintos par  metros requeridos   la mayor  a de ellos recogidos en  Params ini      Entre los distintos aspectos a probar que se le recomendaban a los colaboradores que hicieran especial  hincapi    son los siguiente       F  sicas  se les ped  a que comprobar  n las potencias de disparo  pase seg  n la distancia y
70. you distribute an Opaque copy  directly or  through your agents or retailers  of that edition to the public    It is requested  but not required  that you contact the authors of the Document well before redistribut   ing any large number of copies  to give them a chance to provide you with an updated version of the  Document     4  MODIFICATIONS    You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and  3 above  provided that you release the Modified Version under precisely this License  with the Modified  Version filling the role of the Document  thus licensing distribution and modification of the Modified  Version to whoever possesses a copy of it  In addition  you must do these things in the Modified Version     A  Use in the Title Page  and on the covers  if any  a title distinct from that of the Document  and  from those of previous versions  which should  if there were any  be listed in the History section  of the Document   You may use the same title as a previous version if the original publisher of  that version gives permission     B  List on the Title Page  as authors  one or more persons or entities responsible for authorship of the  modifications in the Modified Version  together with at least five of the principal authors of the  Document  all of its principal authors  if it has fewer than five   unless they release you from this  requirement       State on the Title page the name of the publisher of the Modified Ve
71. z de men  s de la que est    compuesto el juego  men   principal  cr  ditos  pausa  resultado actual del partido  etc        Inteligencia artificial  posiblemente el punto m  s complejo del proyecto ya que tendr   compor   tamientos espec  ficos de los jugadores  as   como de los equipos  Dotar   al juego de facilidad de  ampliaci  n       Integraci  n del sonido  La insercci  n de m  sica en el men   principal o efectos de sonido al  golpear el bal  n     3 5  Pruebas y correcciones  Una de las etapas m  s importantes  si no es la que m  s  del desarrollo de cualquier proyecto  Esta etapa  se realizar  a en paralelo a la de desarrollo  ya que conforme se implementan nuevas funcionalidades     deb  an ser probadas exhaustivamente en cualquiera de las posibles situaciones que pudiera suceder hasta  obtener el comportamiento esperado     10    3 6  Redacci  n de la memoria  La redacci  n de la memoria se ha redactado conforme se iba avanzando en el desarrollo del proyecto     Pero tras la finalizaci  n de este  se le ha dedicado m  s tiempo a su finalizaci  n  corrigiendo puntos que  finalmente no se han adecuado al producto final     3 7  Diagrama de Gantt    A continuaci  n se muestra la planificaci  n anteriormente comentada  en su correspondiente diagrama  de Gantt     11    ed     20     eLIOWSW e  ap UOMIEPaY              MN   E  ing ap sauonnjos    seqanid S  m ayy Jejyajdwo gt  Sb  ta zeJJ3Ju  3 snuaW vb   en jenynse enuabnaul Er  tn J0151 03 A SE21SIJ ap J0J0W Tr   eee
    
Download Pdf Manuals
 
 
    
Related Search
    
Related Contents
IGMP スヌーピング  ストレイトネス(STRAIGHTNESS)  Automatic sewing machine User Manual  Garmin GTX 330 Wheelchair User Manual  Jurisprudence du droit des médias 2e semestre 2012  MC-377 Manual    Copyright © All rights reserved. 
   Failed to retrieve file