Welcome, Guest. Please login or register. Did you miss your activation email?

Author Topic: Naif request : Upload your code & download the OsX,Win,X11,Android,iOS binaries  (Read 14071 times)

0 Members and 1 Guest are viewing this topic.

exoloner

  • Newbie
  • *
  • Posts: 9
    • View Profile
    • JaK (Freebook)
    • Email
This "framework" is really powerful, complete and yet it gives absolute freedoom to prototype & design tasks.
The worst part is the building. Lots of hours trying to setup the 5 build scenarios, and still solving problems.

Don't know if it's technically possible to make a source code upload, to the SFML server, wait for 5 minutes and then the sml-dev site offers you the 5 binaries ready to download.

Additional : Upload the source code, a RAR/ZIP with your data files (API need a Resource class manager), ..wait for the server to build and download the binaries and publish your game.

The registered user on the SFML site, just upload the source code! No deep Cmake/Shell/Dependencies/Preprocessor knowledge needed.

Offcourse, limited only to source code using straight and official SFML classes and API, no user-custom extended stuff.

This could help raising SFML popularity, just a few knowledge of a programming language and the API, having your game build in the main 5 platforms with no effort.

Is this a good idea?  ::) :-[
« Last Edit: January 28, 2019, 07:11:30 pm by exoloner »

eXpl0it3r

  • SFML Team
  • Hero Member
  • *****
  • Posts: 11032
    • View Profile
    • development blog
    • Email
It's much less an SFML problem than a C++ problem.
Building dependencies, writing build scripts for all the platforms simply takes a lot of time and knowledge.

While your idea is theoretically possible, it's not really something we have the capacity, nor the interest in building a customizable CI pipeline. Additionally, you rarely ever want to build your game with just SFML, so now you'll also have to take care dependency management and more. And lastly, there's hardware cost and maintenance time needed.

But we don't actually need to provide any of that, because Travis, Appveyor and others can do that already and it's free for open source project.
As such it might be a lot more useful if someone could sit down and write Travis scripts for all platforms, which you can basically drop into your Git repo and get stuff built.

See how SFML is built on all five major platforms with Travis: https://travis-ci.org/SFML/SFML/builds/483426120
Official FAQ: https://www.sfml-dev.org/faq.php
Official Discord Server: https://discord.gg/nr4X7Fh
——————————————————————
Dev Blog: https://duerrenberger.dev/blog/

exoloner

  • Newbie
  • *
  • Posts: 9
    • View Profile
    • JaK (Freebook)
    • Email
I already have experience in Win32 (demoscene, custom C++, OpenGL GLSL demo-engine)
Just got tired of upgrading by myself ffmpeg/Bass/GLSL wrappers to build perfectly every time Windows updates itself and breaks everything.

So I've found SFML, and works perfectly for me, as I'm not in the mood of re-doing all the basics again plus all the multiplatform configurations and library compiling and linkage.

Yes, was a crazy idea: maintaining 5 diferent Virtualized Machine images, with perfect and ready compiling environments, and 5 by-demand calls per every user uploading a MyGame.cpp, to generate the 5 binaries.
It's crazy.

So, basically this morning I've spend 12 hours reading and understanding all the API documentation, and got myself with an example/PONG.CPP and it's basically the same in the 5 snapshots https://artifacts.sfml-dev.org/by-branch/master/ <- this is pretty useful!

So that's the point : 1 single sourcecode and 5 cmake configurations to build it 5 times for each platform.

Thank you a lot for the TIP : "See how SFML is built on all five major platforms with Travis: https://travis-ci.org/SFML/SFML/builds/483426120"

exoloner

  • Newbie
  • *
  • Posts: 9
    • View Profile
    • JaK (Freebook)
    • Email
Ok. Well, this is pretty discouraging. Neither I owe a Mac to build iOS OsX :

https://github.com/SFML/SFML/wiki/Tutorial%3A-SFML-for-iOS

Let me ask : Is there no other way to build a regular example/pong.cpp for the Apple hardware?

I mean, once you've coded and tested the game playability bugs and design robustness, debugged in realtime on your favourite IDE and host platform, what's left?!¿ the building, so, it's there no way to make this easy? or even automatic? seems not.  :-[
 
Compared to the music industry is like, the producer and musician had to deal with the mechanics of the vinyl press machine, the industrial CDR duplicator drivers, or even that old Polish cassette tape replicator maintenance.

 :-\ :'(

« Last Edit: January 29, 2019, 10:16:13 am by exoloner »

eXpl0it3r

  • SFML Team
  • Hero Member
  • *****
  • Posts: 11032
    • View Profile
    • development blog
    • Email
Thank Apple for restricting their products so much. ::)
You can basically setup Travis to build on macOS and for iOS, but to actually test and fix issues with these platforms, you will have to buy an Apple device.

I mean, once you've coded and tested the game playability bugs and design robustness, debugged in realtime on your favourite IDE and host platform, what's left?!¿ the building, so, it's there no way to make this easy? or even automatic? seems not.  :-[
I'd claim that you can't really test and de-bug your application without actually running it on the target platform. Just because it works well on your Android phone or runs fine on your Windows desktop app, doesn't mean it will just be fine on iOS or macOS.
As such it isn't just the "build" step, which as I already said, could be done with Travis, but it's much more about actually testing and fixing platform specific issues.

I personally, would much less worry about cross-platform compilation etc and rather start writing your games on whatever platform you are with cross-platform libraries. Because writing games is a lot harder, so building an application will be a minor thing to overcome and if you're actually serious about it, you can also find the funding to buy/rent/ask a friend for a macOS machine. ;)
Official FAQ: https://www.sfml-dev.org/faq.php
Official Discord Server: https://discord.gg/nr4X7Fh
——————————————————————
Dev Blog: https://duerrenberger.dev/blog/

exoloner

  • Newbie
  • *
  • Posts: 9
    • View Profile
    • JaK (Freebook)
    • Email

Thank Apple for restricting their products so much. ::)
You can basically setup Travis to build on macOS and for iOS, but to actually test and fix issues with these platforms, you will have to buy an Apple device.
Travis services are for free in case of a non-profit videogame? What If i'm charging like 1.5€ on itch.io?

...and agree also in this. Finally I've got by myself to this conclusion, after days of dependencies/wmake fighting with almost no useful results :
you can also find the funding to buy/rent/ask a friend for a macOS machine. ;)

Anyway, the testing must be done on the real OS/hardware. That touch input multi-finger issues,etc...

eXpl0it3r

  • SFML Team
  • Hero Member
  • *****
  • Posts: 11032
    • View Profile
    • development blog
    • Email
Travis works for free, for open source projects on GitHub - not sure if there are other supported platforms.
So if your game is open source it should work fine with Travis, even if you sell the builds on itch. But IANAL so read their ToS. ;)
Official FAQ: https://www.sfml-dev.org/faq.php
Official Discord Server: https://discord.gg/nr4X7Fh
——————————————————————
Dev Blog: https://duerrenberger.dev/blog/