martes, 21 de enero de 2014

Python en Blender Game

Iniciación al uso del Python en Blender Game Engine: desde lo más básico hasta un ejemplo de salvado del estado del juego.
Índice de partes:

  • Parte I. Preparativos: Escena con objeto caja que incrementa una variable al pulsarlo con el ratón. Escena superpuesta con objeto de texto. Sensor Mouse (Ratón): modos, ver cursor del ratón.
  • Parte II. Introducción a uso de Python en Blender Game Engine. Acceso a propiedades de un objeto, acceso a objetos de otra escena. Ejemplo: cambiar directamente el valor de una variable en una escena superpuesta.
  • Parte III. Controlador Python en modo modulo. Código base o inicial: una sola vez. Activación con sensor inicial o retardo. Cada vez función definida con def nombrefunc(): Preparación de segunda escena para guardar estado. Problemas del cambio de escena (pérdida de datos) 
  • Parte IV. Código Python para salvar estado de juego. Funciones python para inicializar módulo y datos a guardar, salvar y cargar dichos datos con un procedimiento simple de escritura a un fichero de texto
  • Parte V. Uso del código Python de salvar estado. Llama al inicio del escena a cargar(). Antes de salir a salvar(), conectando controlador python a actuador de cambio de escena. Otra función borrar_fichero() para eliminar el archivo de texto con los datos. Llamada a salvar() y borrar() a través de función auxiliar con sensor paraevitar llamarlas dos veces.
  • Parte VI. Resumen del código y su uso. Revisión rápida de las funciones para salvar/cargar y cómo se usan en el ejemplo.

Ficheros necesarios:
  • Fichero base de partida, parte I: base.blend
  • Resumen de la parte I:  pdf 
  • Fichero final parte I inicial parte II: python01.blend 
  • Fichero con código python a copiar en parte II textGE08p2.txt 
  • Resumen de la parte II: pdf 
  • Fichero final parte II inicial parte III: python02.blend 
  • Resumen de la parte III: pdf 
  • Fichero final parte III inicial parte IV: python03.blend 
  • Fichero con código python a copiar en parte IV: textGE08p4.txt 
  • Resumen de parte IV: pdf
  • Fichero final parte IV inicial parte V: python04.blend 
  • Resumen de parte V pdf 
  • Fichero final parte V inicial parte VI: python05.blend 
  • Fichero con código python mínimo para cargar y salvar estado: salvar_cargar.txt 
  • Resumen de la parte VI: pdf


lunes, 16 de diciembre de 2013

Escenas en Blender Game Engine

Uso de escenas en Blender Game Engine: fondo, overlay (interfaz) y cambio de escena (nivel o pantalla). Otros: recoger objetos de energía y actualizar variable vida en interfaz. 
Sensor y actuador Message (comunicar múltiples objetos). Objeto Sensor.
Actuador Sound (sonido). Uso del actuador Scene (manejo de escenas)

Cuatro partes:






  • Parte III. Escena Superpuesta, overlay. Objeto de Texto, uso como variable. Comunicar objetos entre escenas. Actuador Scene. Incluir ficheros externos dentro del .blend


     

  • Parte IV. Cambio de escena. Objeto Sensor. Copiar lógica de un objeto a otro. Escenas copia. Estado en Game Engine con cambio de escenas. 


martes, 10 de diciembre de 2013

Textura Animada

Ejemplo de uso de un Billboard con una textura animada por subimágenes, la textura consiste en una matriz de subimágenes con los fotogramas de  la animación, con el motor Blender Game seleccionado aparece un panel específico en las propiedades de las texturas para configurar esto: Game Properties.

lunes, 9 de diciembre de 2013

Objetos Billboard y Halo

Ejemplos de objetos de tipo Billboard y Halo, en el Game Engine giran por su eje Z (billboard) o alrededor de su centro (Halo) para orientarse hacia la cámara. Se pueden utilizar para modelar objetos con simetría cilíndrica o esférica respectivamente. Se configura en:
Blender Game → Material → Game Settings → Face Orientation → Billboard ó Halo
En este ejemplo utilizamos planos con una textura con transparencia.
El punto importante es que el objeto orienta su eje X negativo hacia la cámara,
es necesario orientarlo en modo objeto de la forma deseada y aplicar la rotación
Object
→Apply→Rotation u orientar su malla en modo edición.
Es conveniente también desactivar las sombras en el objeto
:
Material → Shadow → Desactivar Cast Buffer Shadows.


miércoles, 4 de diciembre de 2013

Character Motion

Repaso rápido del uso del tipo físico Character del Game Engine de Blender,
así como del modo Character Motion del Actuador Motion.
Resulta sencillo de utilizar y puede servir en muchos casos.

Permite control directo de posición y rotación, salto con una fuerza prefijada y
comprueba el apoyo del objeto impidiendo que se aplique la fuerza en el aire. El personaje se puede mover mientras cae, lo que puede ser un inconveniente

martes, 3 de diciembre de 2013

Escena de Fondo

Ejemplo práctico de uso de las escenas en Blender para poner un fondo.
En este caso hecho con un cubo donde se pega una textura con cielo y suelo. 
Es importante que la cámara en la escena principal y la escena de fondo sean la misma para que el fondo se vea de forma coherente al girar. ERROR!!! Cuando una escena está puesta como fondo de otra, Blender hace que esté sincronizada con la cámara de la primera: Tener la misma cámara no es necesario.





Escenas en Blender

Introducción a las escenas en Blender, básicamente cómo crear una nueva escena,  o bien vacía o como un tipo de copia de una escena existente.
Se vuelve a hablar de las copias y enlaces de los datos y sus implicaciones.