Bennu Game Development

Foros en Español => Recursos => Topic started by: Yawin on March 29, 2016, 04:24:02 PM

Title: Pequeña y simple GUI
Post by: Yawin on March 29, 2016, 04:24:02 PM
¡Hola a todos!

Os dejo por aquí una pequeña "librería" que me he hecho para poder hacer botones y labels de forma simple. Todavía es una versión alpha; pero tengo intención de continuarla.

Aún le faltan muchas cosas:
  - Se supone que se pueden asignar gráficos a los botones, pero algo hace que no me funcione.
  - En un futuro quiero añadir textboxes, listas con scroll, radio buttons y checkboxes, etc...
  - Documentación, que si no nadie sabrá usarla.

Si os animáis acepto aportaciones.

Link: http://yawin.no-ip.org/gitweb/?p=SimpleGUI.git
Title: Re:Pequeña y simple GUI
Post by: SplinterGU on March 29, 2016, 04:46:19 PM
capturas?
Title: Re:Pequeña y simple GUI
Post by: Yawin on March 29, 2016, 06:22:40 PM
Pues por el momento no creo ni que merezcan la pena. Trae una demo para probarlo.
Pero en cuanto saque tiempo y avance en el desarrollo habrá capturas. Prometido.
Title: Re:Pequeña y simple GUI
Post by: SplinterGU on March 30, 2016, 03:07:00 AM
genial, gracias!
Title: Re:Pequeña y simple GUI
Post by: l1nk3rn3l on March 30, 2016, 04:20:35 PM
intente convertirlo a pixtudio pero el canvas no se dibuja...


http://www.mediafire.com/download/ocxkb3v91ji0vio/SimpleGUI-pixtudio.rar
Title: Re:Pequeña y simple GUI
Post by: Yawin on March 31, 2016, 08:36:58 AM
Se llama canvas pero es un simple rectángulo xD

Mmmm, no tengo ni idea de Pixtudio, pero echaré un vistazo. Uno de mis objetivos inmediatos es separarlo en varios ficheros, para tenerlo más organizado.
Title: Re:Pequeña y simple GUI
Post by: Drumpi on April 01, 2016, 04:18:41 PM
¿No se supone que el canvas es una zona de dibujado, no un objeto visible en sí mismo?
Title: Re:Pequeña y simple GUI
Post by: Yawin on April 01, 2016, 08:05:49 PM
Se supone, pero yo llamé así a un rectángulo con borde. Porque no se, cosas. Tampoco creo que sabría hacer un canvas.
Title: Re:Pequeña y simple GUI
Post by: Drumpi on April 02, 2016, 01:27:08 AM
Entonces eso sería un "panel" ¿no? LOL
Un canvas sería algo como un "define_region"...
Pero claro, yo sólo conozco el GUI de Java y Unity, no sé cómo se llama en otras partes ^^U
Title: Re:Pequeña y simple GUI
Post by: Yawin on April 04, 2016, 07:58:38 AM
No, si tienes razón. Pero, no se; le di ese nombre porque me gustaba más que panel. Lo suyo sería cambiarlo para que sea un canvas de verdad xD
¿Algún voluntario?
Title: Re:Pequeña y simple GUI
Post by: Drumpi on April 04, 2016, 12:13:38 PM
No, pero es que un canvas es, básicamente, una región de Bennu... creo. Yo creo que basta con que al canvas le llames "panel" y se acabó... o eso o investigas qué es un canvas, para qué sirve, y si merece la pena añadirlo a tu librería, bien por ser útil o bien por mantener la consistencia con otras GUI.
Tampoco te creas que yo investigué demasiado para hacer mi motor de scroll tileado :P
Title: Re:Pequeña y simple GUI
Post by: Yawin on April 04, 2016, 12:21:47 PM
No es sólo una región. Los elementos que contiene se recolocan en base a las dimensiones del canvas (al menos en Visual C# que es la GUI con la que he trabajado). Tiene más enjundia de la que parece.

Pero podría hacer eso, una región de Bennu y puerta.
Title: Re:Pequeña y simple GUI
Post by: Drumpi on April 08, 2016, 01:00:21 PM
Cierto, cierto, si se reescala el canvas, los elementos contenidos con tamaños expresados en porcentajes se modifican, y todos se reposicionan, no había caido en ello (y la pesadilla que supone, aun no he conseguido aprender a manejar el reescalado de la GUI de Unity :S).
Pues entonces una una simple estructura con cuatro datos (ini_canvas_x, ini_canvas_y, width_canvas y height_canvas) y que los elementos se coloquen/reescalen en función a ellos porque, para empezar, no se pueden consultar los valores de las regiones (a menos que accedas a valores reservados del sistema, que se recomienda no tocar), y tienes un máximo de 10 regiones disponibles, de las que no sabes cuales estará usando el que utilice tu código.