Programadores => Programación gráfica => Mensaje iniciado por: Altair en 13 de Mayo de 2014, 05:30:03 pm

Título: GUI sin graficos (idea un poco rara)
Publicado por: Altair en 13 de Mayo de 2014, 05:30:03 pm
Buenas,

quiero exponer esta idea, que llevo unos dias dandole vueltas y me parece que puede ser interesante, a ver que os parece a los demas.

Todos los juegos tienen, de una forma o otra, botones para realizar acciones: el boton Aceptar, el de Cancelar, los de Pantalla Siguiente, etc.

Habia pensado en meter a mi proyecto una GUI basica basada en GTK, pero he pensado: ¿y cuando quieran usar otros graficos, que?. Cada juego es un mundo (graficamente hablando) y hacer que los graficos de la GUI sean los mismos para todos los juegos no parece buena idea.

Y ahi se me ha ocurrido: ¿y un sistema que sean todo menos los graficos en si mismos?, los graficos los pone el juego y todo lo demas el sistema. Por ejemplo, un boton de menu puede tener los siguientes estados: normal, seleccionado, enfocado (raton encima), desactivado. El juego puede usar los estados que quiera, o todos, y asignar a cada uno un grafico diferente.

La misma idea aplicada a cualquier elemento de una GUI: barras de scroll, menus, etc.
Título: Re:GUI sin graficos (idea un poco rara)
Publicado por: [EX3] en 13 de Mayo de 2014, 10:24:21 pm
Dicese, implementar controles de GUI skinables pero sin skin predeterminado, no?

Salu2...
Título: Re:GUI sin graficos (idea un poco rara)
Publicado por: Altair en 14 de Mayo de 2014, 07:04:19 am
Creo que es algo parecido, pero sin skin predeterminado siquiera.

Mas que GUI, parece UI porque todo lo que sean graficos los tienen que poner el desarrollador.
Título: Re:GUI sin graficos (idea un poco rara)
Publicado por: [EX3] en 14 de Mayo de 2014, 10:28:10 am
No se, la idea tampoco difiere mucho de los sistemas de GUI actuales, que aunque llevan skin predeterminado, siempre permiten meterles el skin que quieras. Tu quieres hacer lo mismo pero sin incluir un skin por defecto. Salvo eso no veo novedad alguna :-/

Salu2...

P.D.: Vamos, lo que me refiero que eso que planteas ya lo hacen muchas herramientas como Unity3D e incluso plugins de terceros como NGui (http://www.tasharen.com/?page_id=140) y similares.
Título: Re:GUI sin graficos (idea un poco rara)
Publicado por: [EX3] en 14 de Mayo de 2014, 10:34:43 am
Por otro lado, a mi como desarrollador me parece poco util que un sistema de GUI venga sin un skin por defecto (por basico que sea). Un skin basico por defecto me ayuda para hacer pruebas o prototipos rapidamente (meter un boton aqui para iniciar un evento, un desplegable con filtros para probar alla, un slider para cambiar valores como velocidades, etc...) o para crear rapidamente herramientas integradas que no necesitan de un diseño bonito si no basicamente funcional.

El que ya tuviera que hacerme un skin para estas cosas me parece una perdida de tiempo por muy facil que fuera hacerme una textura en photoshop. Mientras más cosas des hechas, mejor para el programador.

Salu2...
Título: Re:GUI sin graficos (idea un poco rara)
Publicado por: Altair en 27 de Mayo de 2014, 06:08:11 pm
Creo que entiendo por donde vas.

Sigo en la duda:
1) GUI basada en GTK: pierdo la integracion grafica con SDL pero, funcionar, lo que es funcionar, funciona.
2) GUI basada en lineas, circulos, etc: hacer todo lo no grafico desde cero.
3) Sin GUI. Un sistema grafico basico, funcional, pero menos potente.

Estoy entre la 1 y la 3, inclinandome hacia la 3.
Título: Re:GUI sin graficos (idea un poco rara)
Publicado por: [EX3] en 27 de Mayo de 2014, 07:50:12 pm
Si no hay nada ya creado que te sirva y que no te quite la integración con SDL, hazte un sistema básico (label, button, slider, listbox, checkbox y radio button). Vamos, que para lo que dices que quieres usar el GUI no te compliques demasiado la vida.

Salu2...
Título: Re:GUI sin graficos (idea un poco rara)
Publicado por: AdriGV en 28 de Noviembre de 2015, 05:14:29 pm
Hola Altair, si quieres poder tener una UI que puedas implementar junto a SDL (OpenGL, DirectX o cualquier librería) te recomiendo imGUI: https://github.com/ocornut/imgui (https://github.com/ocornut/imgui)

Tienen proyectos para cada librería, es fácil de usar y te permite hacer un montón de cosas.

(http://i.imgur.com/vwacJ4I.jpg)
(http://i.imgur.com/IWlNX8A.gifv)
(http://i.imgur.com/dEYRkbY.jpg)

Espero que te sirva de ayuda.