Este artículo surgió producto de la investigación que estoy desarrollando para mi tesis.
Como Uds. deben saber, Blender no posee una GUI propia para ser usada en el BGE durante la ejecución del juego. Tradicionalmente, se insertan planos u otros objetos que hagan función de botones.
Esta variante, aunque facilita la simulación de casi cualquier componente de una GUI añadiendo texturas, dificulta o ralentiza el tiempo de renderizado al sumar polígonos innecesarios en la escena, teniendo en cuenta que, como todo motor gráfico, este proceso es en tiempo real. Bgui es la solución para este impedimento.

Bgui es una librería implementada en Python para adicionar elementos gráficos como botones o áreas de texto en el Blender Game Engine, desarrollada por Mitchell Stokes, programador también del propio BGE. Es libre, gratuito e incorpora hasta el momento, en la versión 0.09, los siguientes componentes:

  • Frame
  • FrameButton
  • Image
  • ImageButton
  • Label
  • ListBox
  • ProgressBar
  • TextBlock
  • TextInput
  • Video

Aunque no es una GUI completa, posee opciones básicas para el desarrollo de una interfaz sencilla pero usable. Gestiona eventos del mouse y el teclado, visibilidad, posición, escala, transparencias de color. Admite la configuración de las coordenadas UV de las imágenes insertadas y animar cada uno de los elementos. Además, incorpora un sistema de temas de apariencia similar, en alguna medida, a CSS, que puede ser única para cada widget.

Dentro de la carpeta examples, encontrarán 3 ejemplos diferentes de su uso. Para ejecutarlo, presionen la letra P en la ventana 3D.

Pueden obtener más información desde el sitio web http://bgui.readthedocs.org/en/latest/ o leer el fichero CHANGELOG.txt contenido en la carpeta del plugin.

bgui.zip (603 descargas)