Page 1 of 2

Material - Love (Material Design for LÖVE)

Posted: Wed Mar 25, 2015 9:11 pm
by Positive07
Image
My mother always told me that material stuff cant bring love, but I fell in love with Material Design, that is why I brought it to LÖVE!

Material-Love is a set of libraries to use some of the features described in the Google Material-Design spec, in your LÖVE projects.

Image

Material-Love takes the overhead of generating some of the fancy effects described in those docs, like shadows, paper and ripples. It also facilitates the access to some other stuff like the Roboto Fonts, the color palettes, and even provides an icon font with 1722 icons you can use in your project!

It is NOT a UI library nor is it intended to be, if you want you can use it with any other GUI library like Luigi or SUIT.

Note: None of them are really supported by this library. And as such it is not guaranteed to work.

Demo
demo.love
This is a demo file to test all the features in this set of libraries
(419.87 KiB) Downloaded 365 times
Source
The source code can be found in the Material - Love Github Repo

Documentation
Find the documentation for each library in the Github Wiki

Credits
I must credit Robin for his roundrect.lua file which served as a base for my own roundrect.lua

And Mrmaxmeier which helped a lot in the development o the library (fixed some issues and provided the Image Transition effect)

License
This set of libraries is Licensed under MIT License

Re: Material - Love (Material Design for LÖVE)

Posted: Thu Mar 26, 2015 11:15 am
by Ranguna259
This is awesome, great work ! :D
The 9patch, shadows and the FAB libs are awesome, I'm probably gonna use them in future work.

Re: Material - Love (Material Design for LÖVE)

Posted: Thu Mar 26, 2015 11:56 am
by Robin
Great work! :D

One tiny thing about the demo: it'd probably make more sense if all the buttons where activated on release instead of on press.

Re: Material - Love (Material Design for LÖVE)

Posted: Thu Mar 26, 2015 3:49 pm
by SiENcE
First... Great!

Thanks. I'm now reading the google material specs :).

An integration into GSpot or Quickie would be nice.

Re: Material - Love (Material Design for LÖVE)

Posted: Thu Mar 26, 2015 6:26 pm
by Positive07
Robin wrote: It'd probably make more sense if all the buttons where activated on release instead of on press.
I wanted to keep it simple, so I didnt even bother about that stuff, if you dont wanna open a thousand tabs with the repo or close it every time use the right click (it activates the ripples but not the actions)
SiENcE wrote: Thanks. I'm now reading the google material specs :).
Nice! Hope to see some Material Projects soon! :)
SiENcE wrote: An integration into GSpot or Quickie would be nice.
Maybe, I dont know, I'll try to write my own GUI system, based entirely on the things that the spec specifies... And make it more touch friendly...
Ranguna259 wrote: The 9patch, shadows and the FAB libs are awesome, I'm probably gonna use them in future work.
Sure go ahead!

Thank you all guys :awesome:

Re: Material - Love (Material Design for LÖVE)

Posted: Fri Mar 27, 2015 2:32 pm
by SiENcE
Positive07 wrote:
SiENcE wrote: An integration into GSpot or Quickie would be nice.
Maybe, I dont know, I'll try to write my own GUI system, based entirely on the things that the spec specifies... And make it more touch friendly...
Hm ok. A lot of people now are writing gui systems...but none fits my needs and a lot do more than they should.

Most times when you do a game, you use predrawn images. For all. Like buttons, hoovers, aso. You avoid to use generated buttons.

But what most guisystem lack are:
* an easy integration of tween libraries
* an easy integration of interaction libraries for touch or gamepad, mouse, keyboard
* an easy integration of a richtext rendering library
* use of texture atlas
* animated effects that can be applied to any widget (also shaders)
* easy window management
* rendering to canvas and not directly to screen
* an easy to use layout file system (json/xml) and editor tool

They should not:
* implement tween functionality
* implement interaction library
* implement richtext

Mostly not needed are:
* rendering functions of buttons or menus (they should be custom defined by the user or use images)
* fine defined elements, most things should be abstract

cheers

Re: Material - Love (Material Design for LÖVE)

Posted: Fri Mar 27, 2015 5:34 pm
by Snuux
Thranduil library fit your requirements https://github.com/adonaac/thranduil

Re: Material - Love (Material Design for LÖVE)

Posted: Sun Mar 29, 2015 2:59 am
by Positive07
SiENcE wrote: But what most guisystem lack are:
* an easy integration of tween libraries
* an easy integration of interaction libraries for touch or gamepad, mouse, keyboard
* an easy integration of a richtext rendering library
* use of texture atlas
* animated effects that can be applied to any widget (also shaders)
* easy window management
* rendering to canvas and not directly to screen
* an easy to use layout file system (json/xml) and editor tool

They should not:
* implement tween functionality
* implement interaction library
* implement richtext

Mostly not needed are:
* rendering functions of buttons or menus (they should be custom defined by the user or use images)
* fine defined elements, most things should be abstract

cheers
Snuux wrote:Thranduil library fit your requirements https://github.com/adonaac/thranduil
He is right, Thranduil is really close to that, except for the layout part.

Anyway, I know that is the case and that is why this library exists, you can do the rest, and it is pretty simple, actually making an UI with Thranduil plus this or Quickie plus this you can get material looking UIs.

If I ever develop the UI library it would fit almost all the requirements except for the unneeded rendering functions, it would have overwritable basic ones (material looking ones), fine defined objects (there would be bases but the complex stuff would also be there), It would definetely not use canvas (my computer doesnt support them so I try to avoid them as much as I can otherwise the code would be untested).

I would fulfill the rest of the items though... But It wont happen soon haha

Re: Material - Love (Material Design for LÖVE)

Posted: Sun Mar 29, 2015 4:53 am
by alberto_lara
But what most guisystem lack are:
* an easy integration of tween libraries
* an easy integration of interaction libraries for touch or gamepad, mouse, keyboard
* an easy integration of a richtext rendering library
* use of texture atlas
* animated effects that can be applied to any widget (also shaders)
* easy window management
* rendering to canvas and not directly to screen
* an easy to use layout file system (json/xml) and editor tool

Thanks for those hints, I'm making a gui library so I need to know what's important for the people, from the people.

Re: Material - Love (Material Design for LÖVE)

Posted: Mon Apr 06, 2015 9:54 pm
by SiENcE
No problem. Is your gui also on github?