Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson...
-
Upload
sofia-parra-prado -
Category
Documents
-
view
219 -
download
0
Transcript of Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson...
![Page 1: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/1.jpg)
Diseño y arquitectura de Software
Juan Carlos Ruiz PachecoNéstor Fernández
John BullaRóbinson Moscoso
William Alejandro Gómez
![Page 2: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/2.jpg)
ESTAMOS CREANDO UN VIDEOJUEGO.
POR DEFINICIÓN UN VIDEOJUEGO ES UN PROYECTO COMPLEJO
![Page 3: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/3.jpg)
NOSOTROS SOMOS LOS RESPONSABLES DE TENER UN DISEÑO DE SOFTWARE ADECUADO
![Page 4: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/4.jpg)
TENEMOS QUE EVITAR QUE NUESTRO SOFTWARE LLEGUE A SER ESTO
![Page 5: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/5.jpg)
No ponemos bloques a ver que sale
Planeamos, diseñamos y creamos software
Arquitectura de Software
![Page 6: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/6.jpg)
PODEMOS LLEGAR A TENER ESTO
![Page 7: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/7.jpg)
Hardware Access
Game Services
Game Components
GENERAL
LAYOUT
![Page 8: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/8.jpg)
HARDWARE ACCESS
JoyStick
Mouse
Teclado
![Page 9: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/9.jpg)
Standard IO Adapter
StandardIOAdapter
XBOX360Driver
KeyboardDriver
Standard2Axis8ButtonDriver
Se crea un juego de componentes capaz de proveer acceso a los diferentes dispositivos, y capaz de ofrecer una interfaz simplificada de acceso.
IStandardIOAdapter
Client
![Page 10: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/10.jpg)
GAME SERVICES
Command Mapper
Combo Detector
?
![Page 11: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/11.jpg)
Command Mapper
Command Mapper
Combo Detector
?
![Page 12: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/12.jpg)
Command MappersSe crea una clase base llamada CommandMapper, la cual crea un esquema de funcionamiento básico para las clases concretas:• SceneMapper1• SceneMapper2• MainMenuMapper
Las cuales implementan comportamientos específicos.
CommandMapper
Scene1Mapper
Scene2Mapper
MainMenuMapper
Client
![Page 13: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/13.jpg)
Combo Detector
Command Mapper
Combo Detector
?
![Page 14: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/14.jpg)
Combo Behaviors
IComboBehavior
TimedSequenceDetector
FuzzyTimedSequenceDetector
CommandMapper
Se crea una interfaz base llamada ICommandBehavior, de la cual se parte para crear diferentes tipos de análisis de secuencias para Combos, por ejemplo:• TimedSequenceDetector • FuzzyTimedSequenceDetector
Cada CommandMapper tiene internamente un IComboBehavior que le permite determinar cuando ha sucedido un combo.
![Page 15: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/15.jpg)
GAME COMPONENTS
Players Scenes Menus
![Page 16: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/16.jpg)
Behaviors
Controller
Player
States
Player
![Page 17: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/17.jpg)
Player
Player
MonoBehavior
![Page 18: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/18.jpg)
Behavior
Se utiliza un patrón de estrategia para modificar el comportamiento del personaje desde el punto de vista de sus acciones.
Este componente permite traducir que es para cada personaje presionar Patada media o Puño fuerte, así como determinar cambios en las acciones asociadas al personaje, por ejemplo al estar en un modo especial de poder un personaje podría no dar patadas de manera normal sino darlas mas rápido, con efectos especiales más elaborados etc.Los comportamientos son intercambiables en tiempo de ejecución.
BasicPlayerBehavior
OtherPlayerBehaviors
Player IPlayerBehavior
![Page 19: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/19.jpg)
State
Se utiliza un patrón de estado para modificar el comportamiento del personaje desde el punto de vista de estado actual:• Vivo• Muerto• Mareado• Golpeado
Este componente permite tener un estado de personaje modular e intercambiable en tiempo de ejecución, eliminando la complejidad habitual de este tipo de
Player
IPlayerState
PlayingState DeadState GroovyState CrashedState
![Page 20: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/20.jpg)
Controller
En cierta forma un controlador representa el cerebro del personaje.
De esta manera puede existir un controlador de comandos de tipo CommandController el cual trabaja en conjunto con un CommandMapper para determinar las acciones del personaje. O bien puede existir un AiController el cual envía las acciones del personaje a través de IA.
PlayerIController
CommandController
AIController
![Page 21: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/21.jpg)
Player Big Picture
BasicPlayerBehavior
OtherPlayerBehaviors
Player IPlayerBehavior
IPlayerState
PlayingState DeadState GroovyState CrashedState
IController
CommandController
AIController
IComboBehavior
TimedSequenceDetector
CommandMapper
FuzzyTimedSequenceDetector
MonoBehavior
![Page 22: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/22.jpg)
Scene
Interactive Objects HUD Manager
Particle Manager Camera Manager
Scene Manager
![Page 23: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/23.jpg)
Menu
Inicio
Escena 1
Escena 2
Escena #
Fin
![Page 24: Diseño y arquitectura de Software Juan Carlos Ruiz Pacheco Néstor Fernández John Bulla Róbinson Moscoso William Alejandro Gómez.](https://reader034.fdocuments.net/reader034/viewer/2022051419/5665b4cc1a28abb57c93cabe/html5/thumbnails/24.jpg)
GRACIAS