Professional Documents
Culture Documents
Ttulo:
Curso de Desarrollo de Videojuegos 3D con Blender
Autores: (Por orden alfabtico)
Carlos Gonzlez Morcillo,
David Vallejo Fernndez.
Diseo: Carlos Gonzlez Morcillo
1 Edicin: Mayo 2014
Publica:
Esta obra se distribuye bajo licencia Creative Commons ReconocimientoCompartirIgual 3.0 Espaa (CC BY-SA 3.0 ES). Usted es libre de: Compartir y
Adaptar este material para cualquier inalidad, incluso comercial.
Prefacio
Sintel:
CC-BY
Blender
Foundation.
Prefacio
Captulo 1. Desarrollo de Videojuegos
Captulo 2. Introduccin a Blender
Captulo 3. Blender Game Engine
Captulo 4. Referencia de Bloques Lgicos
Enlaces de Inters
5
9
21
41
65
77
Tabla de Contenidos
Captulo
Desarrollo de
Videojuegos
Sabas que...
Segn el informe de ESA (Entertainment Software
Association), la edad media del usuario de software
de entretenimiento est situada en 35 aos,
contando con un 26% sobre el porcentaje total de
usuarios mayores de 50 aos.
Del total, aproximadamente
un 40% son mujeres. En
los ltimos aos, la pro<18
porcin de jugadores y
jugadoras de video25%
juegos se est igualando.
18-50
>50
Usuarios de videojuegos
por rangos de edad
10
49%
26%
Figura 1
El videojuego Pong se considera como unos
de los primeros videojuegos de la historia.
Desarrollado por Atari en 1975, el juego iba
incluido en la consola Atari Pong. Se calcula
que se vendieron unas 50.000 unidades.
11
Productor ejecutivo
12
Productor
Equipo de marketing
Director artstico
Director tcnico
Diseador jefe
Gestor de pruebas
Artista jefe
Programador jefe
Equipo de diseo
Equipo de pruebas
Equipo artstico
Conceptual
Modelado
Animacin
Texturas
Artista
tcnico
Programador
Networking
Herramientas
Fsica
Inteligencia Art.
Motor
Interfaces
Audio
Figura 2
Visin conceptual de un equipo de desarrollo de videojuegos, considerando especialmente la parte
de programacin.
Por
ejemplo, resulta bastante comn
encontrar perfiles de ingenieros especializados en programacin grfica o en scripting e IA. Sin embargo, tal y como se sugiri
anteriormente, el concepto de ingenie-ro
transversal es bastante comn, particularmente en equipos de desarrollo que
tienen un nmero reducido de componentes o con un presupuesto que no les
permite la contratacin de personas especializadas en una nica disciplina.
En el mundo del desarrollo de videojuegos,
es bastante probable encontrar ingenieros
senior responsables de supervisar el desarrollo desde un punto de vista tcnico, de
manera independiente al diseo y generacin de cdigo. No obstante, este tipo de
roles suelen estar asociados a la supervisin
tcnica, la gestin del proyecto e incluso a
la toma de decisiones vinculadas a la
direccin del proyecto. As mismo, algunas
compaas
tambin
pueden
tener
directores tcnicos, responsables de la
supervisin de uno o varios proyectos, e
incluso un director ejecutivo, encargado de
ser el director tcnico del estudio completo
y de mantener, normalmente, un rol
ejecutivo en la compaa o empresa.
General Vs Especfico
En funcin del tamao de una empresa
de desarrollo de videojuegos, el nivel de
especializacin de sus empleados es
mayor o menor. Sin embargo, las ofertas
de trabajo suelen incluir diversas disciplinas de trabajo para facilitar su integracin.
Introduccin al Desarrollo de Videojuegos
13
14
En u
En u
El concepto de Juego
Dentro del mundo del entretenimiento
electrnico, un juego normalmente se suele
asociar a la evolucin, entendida desde un
punto de vista general, de uno o varios
personajes principales o entidades que
pretenden alcanzar una serie de objetivos
en un mundo acotado, los cuales estn
controlados por el propio usuario. As,
entre estos elementos podemos encontrar
desde superhroes hasta coches de
competicin pasando por equipos completos de ftbol. El mundo en el que conviven
dichos personajes suele estar compuesto,
normalmente, por una serie de escenarios
virtuales recreados en tres dimensiones y
tiene asociado una serie de reglas que
determinan la interaccin con el mismo.
De este modo, existe una interaccin
explcita entre el jugador o usuario de
videojuegos y el propio videojuego, el cual
plantea una serie de retos al usuario con el
objetivo final de garantizar la diversin y el
entretenimiento. Adems de ofrecer este
componente emocional, los videojuegos
tambin suelen tener un componente
cognitivo asociado, obligando a los
jugadores a aprender tcnicas y a dominar
el comportamiento del personaje que
manejan para resolver los retos o puzzles
que los videojuegos plantean.
1996
2008
Tomb Raider, PS
230 Polgonos
Figura 3
Para mantener constante el nmero de fps,
los recursos artsticos deben ajustarse a las
caractersticas soportadas por el Hardware.
Sorprende la evolucin en 12 aos del
nmero de polgonos del personaje principal
de Tomb Raider.
15
16
El Motor de Juego
Al igual que ocurre en otras disciplinas en
el campo de la informtica, el desarrollo de
videojuegos se ha beneficiado de la
aparicin de herramientas que facilitan
dicho desarrollo, automatizando determinadas tareas y ocultando la complejidad
inherente a muchos procesos de bajo nivel.
Si, por ejemplo, los SGBD han facilitado
enormemente la gestin de persistencia de
innumerables aplicaciones informticas, los
motores de juegos hacen la vida ms
sencilla a los desarrolladores de videojuegos.
El trmino motor de juego surgi a
mediados de los aos 90 con la aparicin del
famossimo juego de accin en primera
persona Doom, desarrollado por la compaa
id Software bajo la direccin de John
Carmack (ver Figura 4). Esta afirmacin se
sustenta sobre el hecho de que Doom fue
diseado con una arquitectura orientada a
la reutilizacin mediante una separacin
adecuada en distintos mdulos de los
componentes fundamentales, como por
ejemplo el sistema de renderizado grfico,
el sistema de deteccin de colisiones o el
sistema de audio, y los elementos ms
artsticos, como por ejemplo los escenarios
virtuales o las reglas que gobernaban al
propio juego.
Figura 4
17
Gneros de Juegos
Los motores de juegos suelen estar,
generalmente, ligados a un tipo o gnero
particular de juegos. Por ejemplo, un motor
de juegos diseado con la idea de
desarrollar juegos de conduccin diferir
en gran parte con respecto a un motor
orientado a juegos de accin en tercera
persona. No obstante, existen ciertos
mdulos, sobre todo relativos al procesamiento de ms bajo nivel, que son transversales a cualquier tipo de juego, es decir, que
se pueden reutilizar en gran medida de
manera independiente al gnero al que
pertenezca el motor. Un ejemplo representativo podra ser el mdulo de tratamiento de eventos de usuario, responsable
de recoger y gestionar las pulsaciones en el
mando de juego.
A continuacin, se realizar una
descripcin de los distintos gneros de
juegos ms populares atendiendo a las
caractersticas que diferencian unos de
otros en base al motor que les da soporte.
Esta descripcin resulta til para que el
desarrollador identifique los aspectos
crticos de cada juego y utilice las tcnicas
de desarrollo adecuadas para obtener un
buen resultado.
Probablemente, el gnero de juegos ms
popular ha sido y es el de los los
denominados FPS, abreviado tradicionalmente como shooters.
18
Figura 5
Captura de pantalla del juego Tremulous, videojuego GPL y desarrollado sobre el motor
de Quake III.
Figura 6
Captura de pantalla del juego Turtlearena, videojuego GPL y desarrollado sobre el motor
de Quake III.
19
20
Figura 7
Captura de 0.A.D, un videojuego de
estrategia en tiempo real de Wildire.
Captulo
Introduccin
a Blender
21
22
Introduccin a Blender
Figura 1
Linux, un ncleo
de Sistema
Operativo Libre.
Figura 2 Hoja de personaje de Sintel por David Revoy. Pintada sobre una base en 3D.
CC-BY Blender Foundation - www.sintel.org.
El Ciclo de Produccin 3D
Podemos definir el ciclo de trabajo en
producciones 3D estableciendo tres grandes
fases de produccin, cada una de las cuales
tendr asociadas un conjunto de tareas
(algunas de estas tareas pueden no estar
presentes en ciertos proyectos, como la
postproduccin en el caso de Videojuegos).
Las fases de produccin suelen completarse
secuencialmente, y normalmente no hay
que ejecutar tareas de una fase anterior,
cuando sta se ha completado. Las tareas
dentro de una fase de trabajo siguen un
orden aunque ajustes en tareas posteriores
pueden requerir cambios en tareas que
estaban completas.
Preproduccin
Esta fase comienza habitualmente con la
escritura del guin en el caso de generar un
vdeo, o en el caso de Videojuegos, con la
definicin de un documento de diseo de
videojuego. Con el guin (o el documento
de diseo del videojuego) definido, el
equipo de desarrollo visual, habitualmente
formado por ilustradores, establecen la
direccin visual y el estilo del proyecto. Se
eligen los colores clave que complemen
tarn visualmente las metas de cada parte
de la narracin. De igual forma, se
desarrollan las hojas de personajes (ver
Figura 2), con los bocetos de los personajes
que sern incluidos en el desarrollo.
Introduccin a Blender
23
Modelado
En esta etapa se obtiene una representacin
tridimensional de los objetos que interven
drn en la escena. Existen multitud de tcni
cas y herramientas de modelado. Dependien
do de la forma a modelar y el acabado que
se desee obtener, ser mejor emplear una u
otra.
Materiales y Texturas
Diferentes etapas de
Produccin:
Modelado,
Descripcin de
Materiales y Texturas,
Iluminacin y
resultado de Render
Interactivo.
Iluminacin
CC-BY Blender
Foundation Proyecto
YoFrankie.
24
Figura 3
Introduccin a Blender
Animacin
Tanto las herramientas de animacin 2D
como las 3D suelen emplear curvas de
interpolacin para calcular cambios en los
parmetros a animar (ya sea posicin de un
objeto, propiedades de material, etc...)
entre frames clave. De esta forma, el usuario
de la aplicacin nicamente debe identi
ficar esos fotogramas clave, establecer los
valores de las propiedades en esos puntos y
el programa se encarga de calcular los
valores intermedios.
Render
En este paso se realiza el clculo de la
imagen 2D (habitualmente de tipo mapa de
bits, o imagen Raster) correspondiente a la
escena definida. En Videojuegos se utilizan
mtodos de render interactivos, que tratan
de obtener entre 50 y 60 fotogramas por
segundo. En la generacin de vdeos pueden
emplearte mtodos ms realistas, y los
tiempos de Render suelen ser notablemente
superiores (desde minutos hasta horas o das
por fotograma).
Postproduccin
Esta fase toma como entrada las imgenes
generadas en la etapa anterior y las
compone, aplicndoles una serie de filtros.
Algunos efectos (como profundidad de
campo, motion blur, etc.) es menos costoso
generarlos independientemente y compo
nerlos mediante el uso de capas. Si el fondo
es esttico, puede suponer un importante
ahorro de tiempo (como en algunas escenas
de la pelcula Big Buck Bunny, ver Figura 4).
Figura 4
Etapas de render por capas que sern compuestas en la etapa de Postproduccin. a) Fondo
esttico. b) Profundidad de campo. c) Mscara de plano medio. d) Sombra de primer plano. e)
Capa de oclusin ambiental (primer plano). f) Sombra + Color primer plano (animado). g y h)
Capa con personajes (animados). i) Sombra oclusin ambiental propia del personaje primer
plano. j y k) Composicin de capas anteriores. l) Resultado inal.
CC-BY Blender Foundation peach.blender.org
Introduccin a Blender
25
26
Introduccin a Blender
Figura 5
27
Toma de Contacto
Si es la primera vez que ejecutas Blender,
posiblemente tengas la misma sensacin
que tuvimos todos los usuarios de Blender
cuando tomamos contacto con la herra
mienta; la interfaz de usuario de Blender es
tan complejo que simplemente jugando con
la aplicacin no conseguamos hacer casi
nada. Por suerte la interfaz de Blender est
diseado para ser totalmente consistente,
de forma que casi cualquier accin que
puedas realizar en una ventana podrs
realizarla con el mismo operador en
ventanas de otro tipo.
La interfaz de Blender fue diseada para ser
altamente productivo. Por esta razn suelen
emplearse atajos de teclado. No sufras, toda
operacin tiene su equivalente accediendo
a opciones de men, pero es aconsejable
que las ms habituales trates de utilizarlas
mediante los atajos de teclado.
Antes de comenzar indicaremos los sm
bolos que se utilizarn a lo largo de este
manual. Los smbolos que se emplearn se
resumen en el siguiente listado.
28
Introduccin a Blender
Primeros Pasos
Al ejecutar Blender, obtenemos una interfaz
como el que se muestra en la Figura 7. El
espacio de trabajo de Blender es totalmente
personalizable; podemos dividir la pantalla
como nos resulte ms cmodo y situar en
cada porcin el tipo de ventana que
queramos (veremos cmo realizar esta
personalizacin ms adelante).
Por defecto Blender divide la pantalla en
varias secciones, la ventana superior de tipo
Info, un rea central de tipo 3D View, una
inferior Timeline y a la derecha dos
secciones (Outliner y Properties).
Figura 6
Motor de Render
Selectores de
Tipo de Ventana
Organizacin de
Ventanas
Fuente de
Luz (Lamp)
Cmara
Cubo
Selectores de
Tipo de Ventana
Figura 7
Introduccin a Blender
29
Outliner
Este editor
permite
seleccionar
fcilmente
los objetos
de la escena
y filtrarlos
por su
nombre.
Filtro
Visibilidad
Objetos
Cuando la complejidad de la escena aumenta, resulta muy til para
seleccionar los objetos fcilmente.
El Info Editor incorpora la funcionalidad bsica del men principal de cualquier aplicacin, como Abrir,
Guardar, Exportar... Adems, resulta muy til el men de preferencias de usuario File/ User
Preferences que utilizaremos para configurar diversos aspectos de la herramienta. En este men se
selecciona igualmente el motor de Render que emplearemos. En el caso de desarrollar videojuegos,
elegiremos Blender Game.
30
Introduccin a Blender
Zonas divisin
de ventana
Figura 9
Pinchar y arrastrar
(Dividir Ventana)
Figura 8
31
Si utilizas un porttil...
Si usas un ordenador porttil, en mu
chas ocasiones el teclado numrico no
es fcilmente accesible. Puedes emularlo
en el men File/ User Preferences/
Input y activando la opcin Emulate
Numpad (ver figura).
32
Introduccin a Blender
Buscador de
Herramientas
El Sistema de Capas
Sobre Modos...
Introduccin a Blender
33
34
Introduccin a Blender
Figura 10
a
Icono de panel
oculto
Icono de
cabecera oculta
c
Figura 12
Introduccin a Blender
35
Nombre de
la Vista 3D
Muestra cabecera
de la ventana
Muestra panel de
Herramientas T
Ejes de Coordenadas
de la Vista 3D
Selector de
Tipo de Edicin
Figura 11
36
Introduccin a Blender
Muestra panel de
Propiedades N
Las operaciones anteriores, realizadas mediante atajos de teclado o manejadores, permiten utilizar tres modificadores. Estos
modificadores se activan despus de haber
indicado la operacin a realizar.
Transformaciones Rgidas
Veamos ahora algunas operaciones bsicas
que podemos realizar sobre los objetos. Las
operaciones son dependientes del punto de
vista sobre el que estamos trabajando. Es
decir, si rotamos un objeto situando el
puntero del ratn encima de la vista que
muestra el alzado, rotaremos el objeto
sobre el eje Y por defecto, mientras que si lo
rotamos con el puntero del ratn encima de
la vista correspondiente a la planta, lo
rotaremos sobre el eje Z. En la parte inferior
izquierda de cada ven tana 3D aparece un
pequeo sistema de coordenas, indicando
los ejes cartesianos (ver Figura 11).
Uso de Manejadores
Respecto de...
Figura 13
Figura 14
37
38
Introduccin a Blender
Figura 15
El nombre se refleja
en el Outliner
Figura 16
Nombrado de
objetos. Al
cambiar el
nombre del
objeto,
aparecer
relejado tanto
en el Outliner
como en la Vista
3D.
Objeto Seleccionado
en Vista 3D
Nombrado de Objetos
Antes de pasar a la accin y crear nuestro
primer videojuego, necesitamos conocer
algunas utilidades bsicas para organizar
adecuadamente los objetos en la escena.
Cuando construimos una escena compleja,
el nmero de objetos aumenta y es buena
idea mantener una organizacin adecuada.
Es conveniente renombrar los objetos que
se van creando, para facilitar su posterior
seleccin, importacin, etc.
Ojo
. Si est activo el objeto es visible en la escena. Sirve para ocultar
temporalmente objetos.
Puntero
. Permite proteger objetos
de ser seleccionados en la ventana 3D.
Funciona como la tpica herramienta
de candado en software de diseo.
Cmara
. El objeto se tendr en
cuenta en la etapa de Render, para
generar una imagen 2D final.
Introduccin a Blender
39
Capas Vista 3D
Figura 17
Capas
Muchas aplicaciones de diseo permiten utilizar
Capas (Layers) y disponer los objetos en ellas.
Blender dispone de un cmodo sistema de 20
capas, que pueden ser activadas u ocultadas
desde la cabecera de las ventanas 3D (ver Figura
17). A diferencia de otros comandos (como
modificacin de propiedades de sombreado en
una ventana 3D), la activacin de las capas es
global a todas las vistas. Esto implica que si
activamos una capa, los objetos visibles en todas
las vistas sern aquellos que estn situados en
esa capa. Los botones de acceso a las capas slo
estn visibles en Modo de Objeto.
40
Introduccin a Blender
Captulo
Blender
Game Engine
41
Introduccin
Como se ha visto en captulos anteriores,
Blender trae integrado un potente motor de
videojuegos que le permite crear
aplicaciones interactivas en 3D... y generar
ejecutables independientes de Blender!. El
motor de juego de Blender (BGE) es una
potente herramienta de alto nivel de
programacin. Su principal objetivo es el
desarrollo del juego, pero se puede utilizar
para crear cualquier software interactivo en
3D con otros fines, tales como visitas
interactivas de artquitectura en 3D, libros
electrnicos, etc.
El ncleo de la estructura del BGE son los
bloques lgicos (Logic Bricks). El objetivo de
los bloques lgicos es ofrecer un entorno
visual fcil para disear aplicaciones
interactivas sin necesidad de conocer
ningn lenguaje de programacin. Sobre
cada objeto de juego se pueden definir tres
tres tipos de bloques lgicos, Sensores,
Controladores y Actuadores, adems de
Propiedades o Atributos (ver Figura 1).
Propiedades
Las propiedades son como las variables en
los lenguajes de programacin. Sirven para
guardar datos asociados a un objeto, como
su puntuacin, el nmero de vidas que le
quedan, los tipos de armas que tiene, etc.
En el caso de objetos que representen a una
persona, las propiedades podran ser su
nombre, su edad, su altura, peso, nmero de
DNI, etc.
Objetos de Juego
Propiedades
(Atributos)
42
Bloques Lgicos
Sensores
Control.
Actuat.
Figura 1
Diagrama general de
los Objetos de Juego
(Game Objects),
bloques lgicos y
propiedades.
Figura 2
El personaje principal de Yo
Frankie!, un video-juego libre
programado con el motor de Blender.
Motor de
Render
Organizacin de
las Ventanas
Figura 3
43
Vista 3D
(3D View)
Organizador
(Outliner)
Editor de Texto
(Text Editor)
Propiedades
(Properties)
Propiedades
(Properties)
Figura 4
44
Bloques Lgicos
(Sensores, Controladores
y Actuadores)
Generando un Ejecutable
Si ests contento con este primer resultado,
veamos cmo generar un ejecutable independiente de Blender. S, en cualquier momento del desarrollo puedes generar un
ejecutable para los usuarios de tu aplicacin que no necesitarn tener Blender instalado en su equipo. Para ello, debes activar
un plugin de exportacin.
Figura 6
Figura 5
Bloques lgicos
sobre el objeto
Cube
Blender Game Engine
45
Figura 7
El Tick activado
indica que la propiedad toma valor
inicial de True
46
Figura 8
Como se muestra en la Figura 9, es conveniente organizar los bloques lgicos asignndoles un nombre. De igual forma, con el
tringulo situado en la esquina superior
izquierda de cada bloque se puede plegar
su representacin, de forma que nicamente tengamos maximizados los bloques con
los que estemos trabajando.
Figura 10
Activacin de las
opciones de
depuracin
(debug) en el
men principal
de Blender.
Depurando la Aplicacin
En programacin es muy til ver el valor
que toman las propiedades de los objetos.
Esto permite detectar errores (bugs) de
nuestros programas. El editor de Blender
permite mostrar el valor de las propiedades
sobre la ventana del juego.
Bloque lgico
minimizado
Nombre del
Bloque Lgico
Figura 9
47
Mostrar Info de
depuracin
Figura 11
48
Figura 12
Una vez que hemos entendido el funcionamiento de los bloques lgicos, vamos a
optimizar el ejemplo utilizando controladores de tipo expresin. Se puede comparar el
resultado que hemos construido hasta
ahora completo en la Figura 14, frente al
mismo resultado empleando expresiones en
la Figura 15. La complejidad de la solucin
es mucho menor y mucho ms fcilmente
ampliable. El funcionamiento de la aplicacin es exactamente igual.
Reset de tiempo...
Figura 13
Figura 14
El ejemplo del cubo rotador con reloj completo, con todos los bloques lgicos expandidos
49
Figura 15
50
El ejemplo del cubo rotador con reloj completo empleando una nica propiedad y una expresin como controlador.
Introduccin
A continuacin desarrollaremos paso a paso
un videojuego muy sencillo de batallas
espaciales, poniendo en prctica los
conceptos estudiados hasta ahora en el
manual. Si tienes problemas para posicionar
objetos en la escena o manejarte con las
vistas 3D, es conveniente que repases el
captulo 2 donde se estudian los fundamentos del interfaz de usuario de Blender.
De igual forma, tambin es recomendable
que consultes el captulo 4 con la referencia
a los bloques lgicos soportados por Blender, porque en el este tutorial paso a paso
no se explicar su uso. Finalmente, se
asume que el lector ha trabajado con los
conceptos explicados en las pginas
anteriores de este captulo, y es capaz de
generar un ejecutable, activar el modo de
debug, definir propiedades, cambiar el
nombre a los bloques lgicos, etc...
51
Modo de Sombreado
Texture
Figura 16
Tras importar el modelo del jugador principal, este debe ser el aspecto de la interfaz.
Figura 17
52
Figura 19
Figura 18
Muy importante el
valor en Z
Figura 19
53
54
Figura 20
Figura 21
Figura 22
Aadiendo un Empty para que sirva como generador de disparos al objeto Player.
Figura 22
Objeto Shot
Blender Game Engine
55
Figura 23
56
Figura 24
Bloques de EmptyPlayer
Figura 25
Figura 27
Posicin de EmptyEnemy1
Fuera de la cmara
y con valor Z=0
Figura 26
Ajuste de
tamao y
rotacin de
Enemy1
57
Figura 28
Figura 29
Igual que hicimos con el objeto Shot de disparo, aadiremos bloques lgicos sobre el
Enemy1 para que actualice su posicin. En
este caso, se realizar un movimiento en
vertical, segn el eje Y negativo (ver Figura
28). Se aade una rotacin sobre el mismo
eje, para dotar al objeto de mayor inters
visual.
El generador de enemigos (EmptyEnemy1)
crear instancias de ese tipo de forma
aleatoria en el tiempo.
58
Figura 30
Figura 33
Figura 31
Figura 32
Figura 34
59
Figura 35
Propiedad Text
para el Marcador
Figura 37
Figura 38
60
Figura 36
Propiedad Text
para el Marcador
Figura 39
Figura 40
Asteroide
61
Figura 41
Figura 43
Figura 45
Propiedad sobre los Cubos Lmite
Figura 42
62
Figura 44
Figura 47
Figura 46
Figura 48
63
Pasos 8, 9, 10 Continuar?
Emisor de
Asteroides
64
Emisores de
Enemigos
Figura 49
Emisor de
Asteroides
Captulo
Referencia de
Bloques Lgicos
65
Sensores
Borrar
Cabecera Comn
Nivel
Frecuencia
66
Pulsar
Invertir
Always
Delay
Sensores
Keyboard
Mouse
Actuator
Joystick
67
Sensores
Collision
Near
Sobre el uso del Sensor Near....
Property
El campo Property permite filtrar nicamente aquellos objetos que tengan definida
esa propiedad.
Detecta cambios en las propiedades
definidas en el objeto que lo contiene. El
tipo de evaluacin (Evaluation Type), que
hace que se active el sensor, puede ser
Changed, Interval, Not Equal, Equal.
68
Sabas que...?
Sensores
Message
Radar
Random
Ray
69
Controladores
Borrar
Cabecera Comn
ndice
Tipo
Nombre
70
Marca
Operadores Lgicos
Blender permite trabajar con 6 operadores
lgicos bsicos. La Tabla 1 resume el
comportamiento de las operaciones lgicas
realizadas por los distintos tipos de
controlador lgico. La primera columna
(entrada), representa la cantidad de pulsos
positivos enviados desde los sensores
conectados. Las columnas siguientes
representan la respuesta de cada
controlador a esos pulsos. True significa
que las condiciones del controlador han
sido satisfechas y que los actuadores a los
cuales se encuentra conectado sern
activados; False significa que las condiciones del controlador no se alcanzaron y
no se activar la salida.
Controlador Python
Una de las caractersticas avanzadas ms
interesantes del motor de videojuegos es el
uso de scripts en Python. Queda fuera del
mbito de este manual profundizar en este
tipo de controladores, pero si el lector ha
utilizado algn lenguaje de programacin,
es muy recomendable estudiar la API del
Motor de Videojuegos (ver referencia del
manual oficial de Blender).
Controladores
Sensores
Positivos
Controladores
AND
OR
XOR
Ninguno
NAND
NOR
XNOR
Tabla 1
Ejemplo de uso
Controladores
basados en
expresiones
lgicas
Uno
Varios
Todos
Expresin
Este tipo de controlador permite evaluar
una expresin directamente escrita en su
interfaz, generando un pulso positivo (que
activa los actuadores que tenga conectados) cuando se cumpla que el resultado
de la expresin es cierta.
Figura 1
Ejemplo de
uso de una
expresin que
utiliza la
salida de un
sensor y una
propiedad
71
Actuadores
72
Camera
Parent
Actuadores
Filter 2D
Blur: Desenfoque.
Edit Object
73
Actuadores
Message
74
Constraint
Visibility
Actuadores
Game
Motion
Scene
75
Actuadores
Sound
Property
Random
Cambia el valor de una propiedad del objeto. Permite cuatro modos de actuacin:
76
Referencias
Enlaces Web para el
Estudio Autnomo
77
http://www.blender.org
http://wiki.blender.org/index.php/
Doc:ES/2.6/Manual
http://www.ite.educacion.es/
formacion/materiales/181/cd/
78
Blendernation (Ingls)
Blendswap (Ingls)
3D Poder (Espaol)
http://www.blendernation.com
http://http://www.blendswap.com/
http://www.foro3d.com/
79
80
http://download.blender.org/
documentation/gamekit1/
http://download.blender.org/
documentation/gamekit2/