When comparing SFML vs GDevApp, the Slant community recommends SFML for most people. In the question“What are the best 2D game engines?” SFML is ranked 35th while GDevApp is ranked 83rd.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Very efficient and usable
Pro Zlib/PNG license
In short, SFML is free for any use (commercial or personal, proprietary or open-source). You can use SFML in your project without any restriction. You can even omit to mention that you use SFML -- although it would be appreciated.
Pro Can be combined with OpenGL
If you hate something about the way SFML handles graphics, you can just combine it with OpenGL. It's completely smooth and works as expected, without any additional dependencies.
Pro Active community and wiki
You can ask questions on their own personal forum which is full of users, and their wiki is constantly being maintained. They even have an IRC.
Pro Works on every platform
SFML 2.2 brought forth Android & iOS functionality, and SFML games work on Linux, Mac and Windows out of the box, since SFML is written with OpenGL.
Pro Great documentation
SFML is very well documented, even with short examples of use for many functions and modules. Furthermore, there are books like 'SFML essentials' and 'SFML for game development' which teach you how to use this library to its fullest.
Pro Good for OpenGL
If you are thinking about using OpenGL, look no further, you can open a window, and handle events in less than 15 lines, and it provides input, time, and even networking, plus alot more. It has become my favorite c++ library :D
Pro Great library
SFML is a collection of modular, well designed libraries you can implement an engine or game on top of. The API provides tons of good documentation and is very straightforward to use. You can get a game up and running with SFML quite quickly and with minimal effort.
Pro Clean code
An SFML project's code-base is usually clean and easy to read. All public SFML classes are under the namespace "sf" so it is easy to tell which code is yours and which belongs to SFML (of course you can stop this by typing using namespace sf;
).
Pro Available in many languages
There's support for many languages besides C++, current supported languages are: C, .NET, Crystal, D, Euphoria, Go, Java, Julia, Nim, OCaml, Pascal, Python, Ruby and Rust, and this list is constantly growing.
Pro Beginner-friendly
SFML is extremely beginner friendly and even provides pre-built libraries for your IDE of choice on Windows. Besides the fact that it's extremely well documented, they also have a set of tutorials that walk you through every module.
Pro Modern C++11 implementation
SFML is one of the few good C++ frameworks out there to actually make full use of the language. It's extremely well optimized and it plays well with anything you throw at it.
Pro Quickly add behaviors to objects
Prebuilt behaviors can be added to objects. This is a very efficient way to add a physics engine or make a platformer game.
Lots of behaviors are included, from the most advanced (Physics, platformer, top-down movement) to really simple ones (like the behavior to destroy objects when outside the screen or the one to drag objects with mouse or touch).
Pro Powerful events system to create games without programming
No need for coding using this system which is clear and powerful: events are composed of conditions and actions.
Actions are launched when conditions are fulfilled. This is a very beginner-friendly way of making games and is still efficient for advanced usage, contrary to most other "block"/"drag'n'drop" systems.
Pro Intuitive interface
Pro Based on GDevelop
The entire webapp is based on GDevelop, an open source native game development software available for Windows & Linux, so it benefits from its advanced development.
Pro Can download an archive of the game source
Even though the tool depends on having a server up and running, you can download a copy of your game to run locally, or host somewhere else.
Pro Great UI
Sleek and user-friendly UI.
Pro Can export your game as HTML5 and for Android
Games can be packaged for Android without relying on any third party tool. You can also export your game and download it to host it on your server or let it be hosted on GDevApp.com.
Pro Shallow learning curve
Cons
Con Relatively slow
Compared to SDL2, GLFW, it is slow.
Con No GUI editor or IDE
Does not include any IDE or media editor. It's purely source code.
Con May take longer to learn and understand
Con Messy sprite management
Sprites retain all of the operations applied to them, whether that be a new position or a rotation. This makes sprite management somewhat annoying.
Con Not specifically a 2D game engine
It isn't really an engine, more of a collection of modular, well designed libraries you can implement an engine or game on top of.
Con Depends on a hosting service
If the website goes down or closes down, you'll no longer be able to develop your games using this system (but you can download a backup of your game from time to time and open it with GDevelop).
Con Cannot deploy native games
For now, games developed with GDevApp can only be deployed for the Web. Android deployment is in the works, but even then, they won't be native since they are built with web technologies.