Author Topic: Porting LOVE games  (Read 4862 times)

fiver (OP)

  • Posts: 84
Porting LOVE games
« on: April 05, 2015, 10:35:57 pm »
It's pretty awesome that the Zero apparently has a built-in interpreter for LOVE games. Since there are some LOVE games out there that have source code available, I was wondering how hard it would be to port one of them to the Zero.

codingcampbell

  • Posts: 25
Re: Porting LOVE games
« Reply #1 on: April 05, 2015, 11:22:29 pm »
I have been using Love to develop some original titles. Most of the features "just work" but the difficulty of porting would depend on the individual game. These factors matter the most:

- Playable at 4:3 aspect ratio (or can be reasonably scaled)
- Compatible with 0.9.1 (0.9.2 is still pretty new, and not feature-breaking)
- No MP3 files (convert to OGG)
- The game cannot use the Canvas features
- The game cannot use shaders (well, maybe some work, but I haven't seen any run on the GCW)
- The game cannot render too many strings (Love2d's poor string performance is amplified on the GCW)

You should just copy a game over to the GCW and run love via the terminal to quickly see if its using any incompatible features (canvas, shaders, etc). If it's not, making the game playable on the screen may just be a few code tweaks :)
« Last Edit: April 05, 2015, 11:43:30 pm by codingcampbell »

pcercuei

  • Posts: 1728
    • My devblog
Re: Porting LOVE games
« Reply #2 on: April 06, 2015, 09:11:54 am »
The problem with the shaders is that we use a version of Love made for GLES, so you need GLES shaders.

Ryvan

  • Posts: 56
Re: Porting LOVE games
« Reply #3 on: October 01, 2016, 04:05:45 pm »
Why is Canvas not supported? Love2D is up to version 0.10.1 now, any chance of an upgrade?

gameblabla

  • Posts: 1451
Re: Porting LOVE games
« Reply #4 on: October 01, 2016, 08:27:21 pm »
Why is Canvas not supported? Love2D is up to version 0.10.1 now, any chance of an upgrade?
That's due to GCW Zero using a very old version of the graphic driver (etnaviv) that does not properly support GLES shaders.
That's a shame really...
I also want to let you know that Love 0.10.1 isn't much better than the current Love version :
all i get is a black screen.

You can check out my picolove port (with the Love 0.10 binary) for the GCW0 here :
https://github.com/gameblabla/picolove-gcw
⚠ WARNING ⚠
If you are using any of my forks, emulators or ports, you are being influenced by propaganda !

Ryvan

  • Posts: 56
Re: Porting LOVE games
« Reply #5 on: October 01, 2016, 08:41:43 pm »
If there's a newer version of etnaviv why isn't the Zero using it? Is it because there have been no new firmware releases/patches/updates since 2014-08-20 (i.e. 2+ years ago)? What do GL shaders have to with Canvas/offscreen rendering?

It's not so much about being necessarily better as keeping up with newer versions where possible. There are some basic hurdles that keeps tons of Love games from running, no? Are there pico-8 games you want to play or something? I'm not sure why a port of pico-8 (non-free) to Love2D (which is free) is useful. Why not just pursue a port of pico-8 wholesale, preferably by the people who made it?

gameblabla

  • Posts: 1451
Re: Porting LOVE games
« Reply #6 on: October 01, 2016, 10:24:54 pm »
If there's a newer version of etnaviv why isn't the Zero using it? Is it because there have been no new firmware releases/patches/updates since 2014-08-20 (i.e. 2+ years ago)?
I have talked to pcerceui about this here :
http://boards.dingoonity.org/gcw-development/fade-to-black-(f2bgl)/msg151967/#msg151967
But basically, they can't switch to the newer upstream version due to a lack of KMS drivers.
A DRM driver got merged in Linux 4.5 but still no word on a KMS driver.

Quote
What do GL shaders have to with Canvas/offscreen rendering?
Actually, i'm not sure... hahaha
Either way, if it uses the GPU for canvas rendering then the issue might still be etnaviv, because the current version doesn't support all the OpenGLES 2.0 features.
You might want to try using my precompiled Love executable though.

Quote
Are there pico-8 games you want to play or something? I'm not sure why a port of pico-8 (non-free) to Love2D (which is free) is useful.
Gee Ryvan, it's impossible to have fun with you.
Yes, i know a lot of people who enjoys Pico-8 games and picolove should allow them to play all the pico-8 games.
So for me, it is useful.

Quote
Why not just pursue a port of pico-8 wholesale, preferably by the people who made it?
That was funny.

The OpenPandora isn't even capable of running the official pico-8 interpreter due to some issues :
they had to rely on the open-source picolove interpreter to be able to even run such games.
Do you really imagine them releasing an official MIPS version of pico-8 ? I doubt.
« Last Edit: October 01, 2016, 10:29:26 pm by gameblabla »
⚠ WARNING ⚠
If you are using any of my forks, emulators or ports, you are being influenced by propaganda !