PDF de programación - Herramientas de desarrollo - Desarrollo de videojuegos

Imágen de pdf Herramientas de desarrollo - Desarrollo de videojuegos

Herramientas de desarrollo - Desarrollo de videojuegosgráfica de visualizaciones

Publicado el 16 de Julio del 2018
883 visualizaciones desde el 16 de Julio del 2018
3,2 MB
13 paginas
Creado hace 4a (15/05/2016)
Desarrollo de videojuegos
© Fernando Berzal, berzal@acm.org

Herramientas de desarrollo

Motores de videojuegos [game engines]
http://en.wikipedia.org/wiki/Game_engine

Sistemas diseñados
para la creación y desarrollo de videojuegos

 La misma infraestructura se puede utilizar para

distintos juegos

 La misma implementación de un juego se puede
portar a distintas plataformas (PC/móvil/consola).

1

Herramientas de desarrollo

Motores de videojuegos [game engines]
http://en.wikipedia.org/wiki/Game_engine

Funcionalidad típica:
 Motor gráfico: Renderizado de gráficos 2D/3D
 Motor físico (p.ej. detección de colisiones)
 Lenguaje de scripting
 Sonido
 Animaciones
 Redes
 IA
 …

Herramientas de desarrollo

Alternativas

 Desarrollo nativo usando el SDK estándar para una
plataforma (junto con bibliotecas para videojuegos)

 Bibliotecas multiplataforma

(para lenguajes de propósito general)

 Lenguajes para el desarrollo de videojuegos

 IDE’s para el desarrollo de videojuegos

2

3

Desarrollo nativo

 Android

http://www.android.com/

 Web: HTML5 & JavaScript

http://www.w3.org/TR/html5/

 Consolas

Xbox One Development Kit
PlayStation 4 Development Kit
Nintendo Development Kit

$500
$2500
$2000-$10000

Desarrollo nativo: Android

http://developer.android.com/

 Android SDK (Java):

Eclipse IDE
+ ADT [Android Developer Tools]
http://developer.android.com/sdk/

 La biblioteca estándar incluye OpenGL

http://developer.android.com/guide/topics/graphics/opengl.html

 Decenas de “game engines”

http://mobilegameengines.com/android
http://software.intel.com/en-us/blogs/2012/03/13/game-engines-for-android

4

5

Desarrollo nativo: HTML5

 HTML5 + JavaScript

 Decenas de “game engines”

http://html5gameengine.com/

p.ej. enchant.js

http://enchantjs.com/

Quintus
LimeJS
EaselJS

http://html5quintus.com/

http://www.limejs.com/

http://createjs.com/

6

Bibliotecas multiplataforma

LWJGL Lightweight Java Game Library
http://lwjgl.org/

 Java (J2ME)

 Licencia BSD

 Acceso a controladores de juegos (gamepads, joysticks),

OpenGL (gráficos), OpenCL (cálculo) y OpenAL (audio)

7

Bibliotecas multiplataforma

libGDX
http://libgdx.badlogicgames.com/

 Java

 Licencia Apache

 El mismo código permite generar juegos

para Android, Windows, Linux, iOS y HTML5

 Utiliza LWJGL internamente

8

Bibliotecas multiplataforma

SDL Simple Directmedia Layer
http://www.libsdl.org/

 C / C++ / C# / Python

 Licencia zlib

http://www.gzip.org/zlib/zlib_license.html

 Acceso al hardware a bajo nivel

(OpenGL & Direct3D)

 Windows, Mac OS X, Linux, iOS & Android

9

Bibliotecas multiplataforma

Pygame
http://www.pygame.org/

 Python

 Conjunto de módulos construidos sobre SDL

(no requiere OpenGL)

 Licencia GPL [GNU Lesser General Public License],

permite crear juegos gratuitos y comerciales.

Bibliotecas multiplataforma

OpenFL
http://www.openfl.org/

 Haxe (https://en.wikipedia.org/wiki/Haxe)

 Diseñada copiando el API de Flash, permite crear
juegos Flash, HTML5, Windows, OS X, Linux, iOS,
Android, BlackBerry, Firefox OS y Tizen.

 Licencia MIT,

permite crear juegos gratuitos y comerciales.

10

11

Otras bibliotecas

Box2D
http://box2d.org/
 C++
 Licencia zlib
 2D Physics Engine

Cocos2D-x
http://www.cocos2d-x.org/
 C++ / Lua / JavaScript
 Licencia MIT
 2D Physics Engine (p.ej. Box2D)

Lenguajes

Lua
[luna en portugués]
http://www.lua.org/
 Lenguaje interpretado
 Portable (funciona en cualquier
plataforma que disponga de un
compilador de C).

 Licencia MIT

Juegos que usan Lua:
 World of Warcraft
 Angry Birds

12

13

Otras bibliotecas

Corona SDK
http://coronalabs.com/products/corona-sdk/

 Lua

 Multiplataforma para dispositivos móviles
(iOS, Android, Kindle & Windows Phone 8)

 Soporte para estándares de la industria:

OpenGL, OpenAL, Box2D, Lua…

IDEs para videojuegos

GameMaker: Studio
http://www.yoyogames.com/studio
YoYo Games

 Multiplataforma
 Programación visual
 Sprites, objetos, eventos…
 Lenguaje de scripting propio
 Versión gratuita de prueba

14

15

IDEs para videojuegos

Stencyl
http://www.stencyl.com/

 Programación visual con Scratch

(aunque también se puede
programar usando Haxe).

 Física y colisiones: Box2D

 Gratis para juegos web,

$99 al año para juegos de escritorio,
$199 al año para juegos móviles (Android & iOS)

16

IDEs para videojuegos

Construct2
https://www.scirra.com/construct 2
Scirra

 HTML5
 Juegos 2D
 Prototipado
 Python

(opcional)

 Versión

de prueba
gratuita

17

IDEs para videojuegos

Blender
http://www.blender.org/
Blender Foundation

 3D
 Python
 OpenGL
 OpenAL
 Licencia GNU

IDEs para videojuegos

Unity
http://unity3d.com/
Unity Technologies

 Multiplataforma
 C# (Mono),

JavaScript & Boo

 2D & 3D
 Versión gratuita

de prueba

 $1500 o bien

$75 al mes

18

19

IDEs para videojuegos

Unreal Engine
http://www.unrealengine.com/udk/
Epic Games

 Multiplataforma
 C++
 2D & 3D
 Gratis para

uso no comercial

 Royalties (5%)

a partir de $3000
por trimestre

IDEs para videojuegos

CryENGINE
http://mycryengine.com/
Crytek

 Multiplataforma
 C++/Lua
 3D
 Gratis

para uso
no comercial

 Royalties (20%)

o suscripción…

20

21

Más alternativas

 http://en.wikipedia.org/wiki/List_of_game_engines

 http://www.indiedb.com/engines?sort=ranktoday-asc

22

Proyectos previos…

# Herramienta

Lenguaje

URL

12 Unity

C# / JavaScript / Boo http://unity3d.com/

4

3

3

2

Cocos2d-x

Phaser.io

Pygame

Unreal Engine

2 Game Maker

2

2

1

1

1

LibGDX

jMonkeyEngine

Corona SDK

Stencyl

SFML

C++

JavaScript

Python

http://www.cocos2d-x.org/

http://phaser.io/

http://pygame.org/

C++

GML

Java

Java

Lua

http://www.unrealengine.com/

https://www.yoyogames.com/studio

http://libgdx.badlogicgames.com/

http://jmonkeyengine.org/

http://coronalabs.com/

Scratch / Haxe

http://www.stencyl.com/

C++

http://www.sfml-dev.org/

23

Para la semana que viene…

Selección de herramientas de desarrollo

Elegir al menos tres formas alternativas de implementar el
videojuego propuesto y realizar un análisis de las ventajas y
desventajas que ofrece cada una de ellas.

Para cada alternativa analizada:
 Nombre
 Página web
 Categoría (biblioteca, lenguaje de programación, IDE…)
 Coste (open source vs. licencia comercial)
 3 características destacadas que pueden resultar útiles
 3 limitaciones observadas de cara al videojuego propuesto

Decisión final (tabla resumen y justificación razonada)

24
  • Links de descarga
http://lwp-l.com/pdf12553

Comentarios de: Herramientas de desarrollo - Desarrollo de videojuegos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad