Desarrollo de un motor de videojuegos y su utilización en la creación de un videojuego

Un videojuego se compone de diversos elementos tales como modelos, gráficas, guiones, música, y sonido, elementos que se complementan para generar un producto multimedia cuya finalidad es la de ofrecer una experiencia interactiva que entretenga a los usuarios. Esta es una industria de millones de dó...

Full description

Autores:
Rocha Silva, Carlos Andrés
Uribe Ordoñez, Nitae Andrés
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2008
Institución:
Universidad Autónoma de Bucaramanga - UNAB
Repositorio:
Repositorio UNAB
Idioma:
spa
OAI Identifier:
oai:repository.unab.edu.co:20.500.12749/1232
Acceso en línea:
http://hdl.handle.net/20.500.12749/1232
Palabra clave:
Videogames
Electronic games
Systems engineering
Software engineering
Investigations
Equipment and accessories
Lesser general public licence
CNEngine
Videojuegos
Juegos electrónicos
Ingeniería de sistemas
Ingeniería de software
Investigaciones
Equipo y accesorios
Motor de videojuegos
Rights
openAccess
License
http://creativecommons.org/licenses/by-nc-nd/2.5/co/
id UNAB2_e2320c9472e69f42ba5ebd254ae60ee7
oai_identifier_str oai:repository.unab.edu.co:20.500.12749/1232
network_acronym_str UNAB2
network_name_str Repositorio UNAB
repository_id_str
dc.title.spa.fl_str_mv Desarrollo de un motor de videojuegos y su utilización en la creación de un videojuego
dc.title.translated.eng.fl_str_mv Development of a video game engine and its use in the creation of a video game
title Desarrollo de un motor de videojuegos y su utilización en la creación de un videojuego
spellingShingle Desarrollo de un motor de videojuegos y su utilización en la creación de un videojuego
Videogames
Electronic games
Systems engineering
Software engineering
Investigations
Equipment and accessories
Lesser general public licence
CNEngine
Videojuegos
Juegos electrónicos
Ingeniería de sistemas
Ingeniería de software
Investigaciones
Equipo y accesorios
Motor de videojuegos
title_short Desarrollo de un motor de videojuegos y su utilización en la creación de un videojuego
title_full Desarrollo de un motor de videojuegos y su utilización en la creación de un videojuego
title_fullStr Desarrollo de un motor de videojuegos y su utilización en la creación de un videojuego
title_full_unstemmed Desarrollo de un motor de videojuegos y su utilización en la creación de un videojuego
title_sort Desarrollo de un motor de videojuegos y su utilización en la creación de un videojuego
dc.creator.fl_str_mv Rocha Silva, Carlos Andrés
Uribe Ordoñez, Nitae Andrés
dc.contributor.advisor.spa.fl_str_mv Carrillo Zambrano, Eduardo
dc.contributor.author.spa.fl_str_mv Rocha Silva, Carlos Andrés
Uribe Ordoñez, Nitae Andrés
dc.contributor.cvlac.*.fl_str_mv https://scienti.minciencias.gov.co/cvlac/visualizador/generarCurriculoCv.do?cod_rh=0000068780;https://scienti.minciencias.gov.co/cvlac/visualizador/generarCurriculoCv.do?cod_rh=0001346209
dc.contributor.googlescholar.*.fl_str_mv https://scholar.google.es/citations?hl=es#user=kYG-lPUAAAAJ
dc.contributor.orcid.*.fl_str_mv https://orcid.org/0000-0002-0868-940X
dc.contributor.scopus.*.fl_str_mv https://www.scopus.com/authid/detail.uri?authorId=15622921600
dc.contributor.researchgate.*.fl_str_mv https://www.researchgate.net/profile/Eduardo_Carrillo_Zambra;https://www.researchgate.net/profile/Nitae_Uribe
dc.contributor.researchgroup.spa.fl_str_mv Grupo de Investigación Preservación e Intercambio Digital de Información y Conocimiento - Prisma
Grupo de Investigaciones Clínicas
dc.subject.keywords.eng.fl_str_mv Videogames
Electronic games
Systems engineering
Software engineering
Investigations
Equipment and accessories
Lesser general public licence
CNEngine
topic Videogames
Electronic games
Systems engineering
Software engineering
Investigations
Equipment and accessories
Lesser general public licence
CNEngine
Videojuegos
Juegos electrónicos
Ingeniería de sistemas
Ingeniería de software
Investigaciones
Equipo y accesorios
Motor de videojuegos
dc.subject.lemb.spa.fl_str_mv Videojuegos
Juegos electrónicos
Ingeniería de sistemas
Ingeniería de software
Investigaciones
Equipo y accesorios
dc.subject.proposal.spa.fl_str_mv Motor de videojuegos
description Un videojuego se compone de diversos elementos tales como modelos, gráficas, guiones, música, y sonido, elementos que se complementan para generar un producto multimedia cuya finalidad es la de ofrecer una experiencia interactiva que entretenga a los usuarios. Esta es una industria de millones de dólares con alta complejidad y costos de producción, y la reutilización de herramientas de desarrollo se ha hecho indispensable en su crecimiento. Con este propósito nacen los motores de videojuegos, aumentando la eficiencia y capacidad de los videojuegos. Sin embargo, el costo de los motores profesionales excede el presupuesto de empresas en crecimiento, y el desarrollo de herramientas libres es muy limitado, careciendo de los elementos para crear paquetes multimedia integrales. Se ha propuesto el desarrollo de un motor de videojuegos llamado el CNEngine, con licencia Lesser General Public Licence (LGPL) compuesto por todos los módulos necesarios para garantizar su autosuficiencia en la creación de videojuegos, de manera que sirva como base para una industria en crecimiento en la región y en el mundo, e impulse futuros desarrollos similares. Los videojuegos deben cumplir con plazos y estándares en una industria competitiva, y existe poca documentación respecto a pautas o patrones de diseño que permitan guiar estos tipos de desarrollo, por lo que se ha planteado una investigación enfocada en el estado del arte de la ingeniería de software para videojuegos, de manera que facilite la creación de un producto que cumpla con todos los requerimientos del diseñador.
publishDate 2008
dc.date.issued.none.fl_str_mv 2008
dc.date.accessioned.none.fl_str_mv 2020-06-26T17:56:09Z
dc.date.available.none.fl_str_mv 2020-06-26T17:56:09Z
dc.type.driver.none.fl_str_mv info:eu-repo/semantics/bachelorThesis
dc.type.local.spa.fl_str_mv Trabajo de Grado
dc.type.coar.none.fl_str_mv http://purl.org/coar/resource_type/c_7a1f
dc.type.redcol.none.fl_str_mv http://purl.org/redcol/resource_type/TP
format http://purl.org/coar/resource_type/c_7a1f
dc.identifier.uri.none.fl_str_mv http://hdl.handle.net/20.500.12749/1232
dc.identifier.instname.spa.fl_str_mv instname:Universidad Autónoma de Bucaramanga - UNAB
dc.identifier.reponame.spa.fl_str_mv reponame:Repositorio Institucional UNAB
url http://hdl.handle.net/20.500.12749/1232
identifier_str_mv instname:Universidad Autónoma de Bucaramanga - UNAB
reponame:Repositorio Institucional UNAB
dc.language.iso.spa.fl_str_mv spa
language spa
dc.relation.references.spa.fl_str_mv Rocha Silva, Carlos Andrés, Uribe Ordoñez, Nitae Andrés, Carrillo Zambrano, Eduardo (2008). Desarrollo de un motor de videojuegos y su utilización en la creación de un videojuego. Bucaramanga (Colombia) : Universidad Autónoma de Bucaramanga UNAB
ADAMS, Jim. Programming Role Playing Games with DirectX. Segunda edición. WordWare Publishing, 2004. 849 p. Game Development. ISBN: 1-59200-315-X.
-------- . -------- . Primera edición. WordWare Publishing, 2002. 1056 p. Game Development. ISBN: 1-931841-09-8.
BETHKE, Erik. Game Development and Production. Primera edición. WordWare Publishing, 2003. 412 p. ISBN 1-55622-951-8
EBERLY, David. 3D Game Engine Design: A practical approach to real time computer graphics. Morgan Kauffman Publishers, 2000. 561 p. The Morgan Kaufmann Series in Interactive 3D Technology. ISBN: 978-1-55860-593-0
ENGEL, Wolfgang F (editor). Vertex and Pixel Shader Tips and Tricks. Wordware Publishing, Inc. 494 p. 2002. ISBN 1-55622-041-3.
MCCUSKEY, Mason. Beginning Game Audio Programming. Premier Press. 352 p. 2003. ISBN:1592000290.
MILLINGTON, Ian. Game physics engine development. Morgan Kaufmann Publishers. 456 p. 2007. ISBN-13: 978-0-12-369471-3.
PEDERSEN, Roger E. Game design foundations, Wordware Publishing. 2003. ISBN: 1-55622-973-9.
PRESSMAN, Roger. Ingeniería de Software, Un Enfoque Práctico. McGraw Hill. Quinta Edición. 2001. ISBN: 84-481-3214-9
ROLLINGS, Andrew, ADAMS, Ernest. Andrew Rollings and Ernest Adams on Game Design. New Riders Publishing, 2003 648 p. ISBN : 1-592-73001-9.
RUCKER, Rudy. Software Engineering and Computer Games. Addison Wesley. Primera edición. 2002. 544 p. ISBN: 0-201-76791-0.
SÁNCHEZ-CRESPO, Daniel. Core Techniques and Algorithms in Game Programming. New Riders Publishing. 2003. 888 p. ISBN: 0-1310-2009-9.
WALSH, Peter. Advanced 3D Game Programming with DirectX. WordWare Publishing, 2003. 610 p. ISBN-10: 1556227213
ZERBST, Stefan; DUVEL, Oliver. 3D Game Engine Programming. Thomson Course Technology, 2004. Game Developers Series. 896 p. ISBN-10: 1592003516
dc.rights.uri.*.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/2.5/co/
dc.rights.local.spa.fl_str_mv Abierto (Texto Completo)
dc.rights.accessrights.spa.fl_str_mv info:eu-repo/semantics/openAccess
http://purl.org/coar/access_right/c_abf2
dc.rights.creativecommons.*.fl_str_mv Atribución-NoComercial-SinDerivadas 2.5 Colombia
rights_invalid_str_mv http://creativecommons.org/licenses/by-nc-nd/2.5/co/
Abierto (Texto Completo)
http://purl.org/coar/access_right/c_abf2
Atribución-NoComercial-SinDerivadas 2.5 Colombia
eu_rights_str_mv openAccess
dc.format.mimetype.spa.fl_str_mv application/pdf
dc.coverage.spa.fl_str_mv Bucaramanga (Colombia)
dc.coverage.campus.spa.fl_str_mv UNAB Campus Bucaramanga
dc.publisher.grantor.spa.fl_str_mv Universidad Autónoma de Bucaramanga UNAB
dc.publisher.faculty.spa.fl_str_mv Facultad Ingeniería
dc.publisher.program.spa.fl_str_mv Pregrado Ingeniería de Sistemas
institution Universidad Autónoma de Bucaramanga - UNAB
bitstream.url.fl_str_mv https://repository.unab.edu.co/bitstream/20.500.12749/1232/1/2008_Tesis_Rocha_Silva_Carlos_Andres.pdf
https://repository.unab.edu.co/bitstream/20.500.12749/1232/2/2008_Tesis_Rocha_Silva_Carlos_Andres.pdf.jpg
bitstream.checksum.fl_str_mv 3b1ab3f1e9805f5437ac9901de98c2b4
ed1efa8c1a2d75328dd1709c75afe15c
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
repository.name.fl_str_mv Repositorio Institucional | Universidad Autónoma de Bucaramanga - UNAB
repository.mail.fl_str_mv repositorio@unab.edu.co
_version_ 1828219988460175360
spelling Carrillo Zambrano, Eduardo0af7e78d-2c4d-4652-a7d8-606c9e3f667e-1Rocha Silva, Carlos Andrés4ebcadc0-b737-4fa0-9e63-342948eaa029-1Uribe Ordoñez, Nitae Andrés4ffc56a3-445f-40a8-98d8-b09904a2e72c-1https://scienti.minciencias.gov.co/cvlac/visualizador/generarCurriculoCv.do?cod_rh=0000068780;https://scienti.minciencias.gov.co/cvlac/visualizador/generarCurriculoCv.do?cod_rh=0001346209https://scholar.google.es/citations?hl=es#user=kYG-lPUAAAAJhttps://orcid.org/0000-0002-0868-940Xhttps://www.scopus.com/authid/detail.uri?authorId=15622921600https://www.researchgate.net/profile/Eduardo_Carrillo_Zambra;https://www.researchgate.net/profile/Nitae_UribeGrupo de Investigación Preservación e Intercambio Digital de Información y Conocimiento - PrismaGrupo de Investigaciones Clínicas2020-06-26T17:56:09Z2020-06-26T17:56:09Z2008http://hdl.handle.net/20.500.12749/1232instname:Universidad Autónoma de Bucaramanga - UNABreponame:Repositorio Institucional UNABUn videojuego se compone de diversos elementos tales como modelos, gráficas, guiones, música, y sonido, elementos que se complementan para generar un producto multimedia cuya finalidad es la de ofrecer una experiencia interactiva que entretenga a los usuarios. Esta es una industria de millones de dólares con alta complejidad y costos de producción, y la reutilización de herramientas de desarrollo se ha hecho indispensable en su crecimiento. Con este propósito nacen los motores de videojuegos, aumentando la eficiencia y capacidad de los videojuegos. Sin embargo, el costo de los motores profesionales excede el presupuesto de empresas en crecimiento, y el desarrollo de herramientas libres es muy limitado, careciendo de los elementos para crear paquetes multimedia integrales. Se ha propuesto el desarrollo de un motor de videojuegos llamado el CNEngine, con licencia Lesser General Public Licence (LGPL) compuesto por todos los módulos necesarios para garantizar su autosuficiencia en la creación de videojuegos, de manera que sirva como base para una industria en crecimiento en la región y en el mundo, e impulse futuros desarrollos similares. Los videojuegos deben cumplir con plazos y estándares en una industria competitiva, y existe poca documentación respecto a pautas o patrones de diseño que permitan guiar estos tipos de desarrollo, por lo que se ha planteado una investigación enfocada en el estado del arte de la ingeniería de software para videojuegos, de manera que facilite la creación de un producto que cumpla con todos los requerimientos del diseñador.INTRODUCCIÓN 16 1. REFERENCIAS CONCEPTUALES 19 1.1 GENERALIDADES DE LOS VIDEOJUEGOS 19 1.1.1 ¿Que es un videojuego? 19 1.1.2 Clasificación de los videojuegos 20 1.1.3 Elementos en el desarrollo de un videojuego 25 1.2 MOTORES DE VIDEOJUEGOS 26 1.2.1 Motor de física 27 1.2.2 Motor de renderización 27 1.2.3 Motor de audio 28 1.2.4 Motor de Entrada/Salida 29 1.3 OTROS CONCEPTOS 30 1.3.1 Conceptos físicos. 30 1.3.2 Conceptos de programación. 33 1.3.3 Conceptos de programación gráfica. 34 2. ESTADO DEL ARTE 36 2.1 HISTORIA DE LOS VIDEOJUEGOS 36 2.1.1 Orígenes 36 2.1.2 Empresas 37 2.1.3 Consolas 38 2.2 MOTORES PARA VIDEOJUEGOS 40 2.3 ESTADO DEL ARTE A NIVEL REGIONAL 41 3. TECNOLOGÍAS USADAS 43 3.1 LENGUAJE DE PROGRAMACIÓN C++ 43 3.2 HERRAMIENTA DE DISEÑO GRÁFICO MILKSHAPE 3D 43 3.3 DIRECTX 43 4. DISEÑO Y DESARROLLO DEL MOTOR 45 4.1 METODOLOGÍA 45 4.2 DESARROLLO DE LA ESTRUCTURA DEL MOTOR 45 4.2.1 Módulo de Render 48 4.2.2 Módulo de Input 49 4.2.3 Módulo de Audio 49 4.2.4 Módulo de Físicas 49 4.3 MOTOR DE RENDERIZADO 50 4.3.1 Diseño 50 4.3.2 Desarrollo 51 4.4 DESARROLLO DE LA LIBRERÍA MATEMÁTICA 59 4.5 MOTOR DE AUDIO 64 4.5.1 Diseño 64 4.5.2 Desarrollo 65 4.6 MOTOR DE ENTRADA/SALIDA 66 4.6.1 Diseño 66 4.6.2 Desarrollo. 66 4.7 MOTOR DE FÍSICAS 67 4.7.1 Introducción 67 4.7.2 Diseño 68 4.7.3 Desarrollo 69 5. ESTADO DEL ARTE DE LAS METODOLOGÍAS DE INGENIERÍA DE SOFTWARE PARA DESARROLLO DE VIDEOJUEGOS 79 6. CONCLUSIONES 81 7. RECOMENDACIONES 84 ANEXOS 87PregradoA video game is made up of various elements such as models, graphics, scripts, music, and sound, elements that complement each other to generate a multimedia product whose purpose is to offer an interactive experience that entertains users. This is a multi-million dollar industry with high complexity and production costs, and the reuse of development tools has become indispensable in its growth. For this purpose, video game engines were born, increasing the efficiency and capacity of video games. However, the cost of professional engines exceeds the budget of growing companies, and the development of free tools is very limited, lacking the elements to create comprehensive multimedia packages. The development of a video game engine called the CNEngine has been proposed, licensed under the Lesser General Public License (LGPL), composed of all the necessary modules to guarantee its self-sufficiency in the creation of video games, so that it serves as the basis for a growing industry in the region and in the world, and drive future similar developments. Video games must comply with deadlines and standards in a competitive industry, and there is little documentation regarding guidelines or design patterns that allow guiding these types of development, so a research focused on the state of the art of engineering has been proposed. video game software, in a way that facilitates the creation of a product that meets all the designer's requirements.Modalidad Presencialapplication/pdfspahttp://creativecommons.org/licenses/by-nc-nd/2.5/co/Abierto (Texto Completo)info:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2Atribución-NoComercial-SinDerivadas 2.5 ColombiaDesarrollo de un motor de videojuegos y su utilización en la creación de un videojuegoDevelopment of a video game engine and its use in the creation of a video gameIngeniero de SistemasBucaramanga (Colombia)UNAB Campus BucaramangaUniversidad Autónoma de Bucaramanga UNABFacultad IngenieríaPregrado Ingeniería de Sistemasinfo:eu-repo/semantics/bachelorThesisTrabajo de Gradohttp://purl.org/coar/resource_type/c_7a1fhttp://purl.org/redcol/resource_type/TPVideogamesElectronic gamesSystems engineeringSoftware engineeringInvestigationsEquipment and accessoriesLesser general public licenceCNEngineVideojuegosJuegos electrónicosIngeniería de sistemasIngeniería de softwareInvestigacionesEquipo y accesoriosMotor de videojuegosRocha Silva, Carlos Andrés, Uribe Ordoñez, Nitae Andrés, Carrillo Zambrano, Eduardo (2008). Desarrollo de un motor de videojuegos y su utilización en la creación de un videojuego. Bucaramanga (Colombia) : Universidad Autónoma de Bucaramanga UNABADAMS, Jim. Programming Role Playing Games with DirectX. Segunda edición. WordWare Publishing, 2004. 849 p. Game Development. ISBN: 1-59200-315-X.-------- . -------- . Primera edición. WordWare Publishing, 2002. 1056 p. Game Development. ISBN: 1-931841-09-8.BETHKE, Erik. Game Development and Production. Primera edición. WordWare Publishing, 2003. 412 p. ISBN 1-55622-951-8EBERLY, David. 3D Game Engine Design: A practical approach to real time computer graphics. Morgan Kauffman Publishers, 2000. 561 p. The Morgan Kaufmann Series in Interactive 3D Technology. ISBN: 978-1-55860-593-0ENGEL, Wolfgang F (editor). Vertex and Pixel Shader Tips and Tricks. Wordware Publishing, Inc. 494 p. 2002. ISBN 1-55622-041-3.MCCUSKEY, Mason. Beginning Game Audio Programming. Premier Press. 352 p. 2003. ISBN:1592000290.MILLINGTON, Ian. Game physics engine development. Morgan Kaufmann Publishers. 456 p. 2007. ISBN-13: 978-0-12-369471-3.PEDERSEN, Roger E. Game design foundations, Wordware Publishing. 2003. ISBN: 1-55622-973-9.PRESSMAN, Roger. Ingeniería de Software, Un Enfoque Práctico. McGraw Hill. Quinta Edición. 2001. ISBN: 84-481-3214-9ROLLINGS, Andrew, ADAMS, Ernest. Andrew Rollings and Ernest Adams on Game Design. New Riders Publishing, 2003 648 p. ISBN : 1-592-73001-9.RUCKER, Rudy. Software Engineering and Computer Games. Addison Wesley. Primera edición. 2002. 544 p. ISBN: 0-201-76791-0.SÁNCHEZ-CRESPO, Daniel. Core Techniques and Algorithms in Game Programming. New Riders Publishing. 2003. 888 p. ISBN: 0-1310-2009-9.WALSH, Peter. Advanced 3D Game Programming with DirectX. WordWare Publishing, 2003. 610 p. ISBN-10: 1556227213ZERBST, Stefan; DUVEL, Oliver. 3D Game Engine Programming. Thomson Course Technology, 2004. Game Developers Series. 896 p. ISBN-10: 1592003516ORIGINAL2008_Tesis_Rocha_Silva_Carlos_Andres.pdf2008_Tesis_Rocha_Silva_Carlos_Andres.pdfTesisapplication/pdf951254https://repository.unab.edu.co/bitstream/20.500.12749/1232/1/2008_Tesis_Rocha_Silva_Carlos_Andres.pdf3b1ab3f1e9805f5437ac9901de98c2b4MD51open accessTHUMBNAIL2008_Tesis_Rocha_Silva_Carlos_Andres.pdf.jpg2008_Tesis_Rocha_Silva_Carlos_Andres.pdf.jpgIM Thumbnailimage/jpeg4891https://repository.unab.edu.co/bitstream/20.500.12749/1232/2/2008_Tesis_Rocha_Silva_Carlos_Andres.pdf.jpged1efa8c1a2d75328dd1709c75afe15cMD52open access20.500.12749/1232oai:repository.unab.edu.co:20.500.12749/12322024-01-21 13:35:14.471open accessRepositorio Institucional | Universidad Autónoma de Bucaramanga - UNABrepositorio@unab.edu.co