When comparing LÖVE vs Starling, the Slant community recommends LÖVE for most people. In the question“What are the best 2D game engines?” LÖVE is ranked 2nd while Starling is ranked 56th. The most important reason people chose LÖVE is:
Lua is an embeddable scripting language designed to be lightweight, fast yet powerful. It is used in major titles such as Civilization as well as a lot of indie games. Lua is very popular because it provides "meta language" features. You can implement object-oriented structures, or pure procedural functions, etc. It has a very simple C interface, and gives the engine developer a lot of flexibility in the language itself. Artists tend to love Lua too because it's very approachable, with plain and forgiving syntax. Lua is free open-source software, distributed under a very liberal license (the well-known MIT license).
Ranked in these QuestionsQuestion Ranking
Pro Uses the fantastic Lua for scripting
Lua is an embeddable scripting language designed to be lightweight, fast yet powerful. It is used in major titles such as Civilization as well as a lot of indie games.
Lua is very popular because it provides "meta language" features. You can implement object-oriented structures, or pure procedural functions, etc. It has a very simple C interface, and gives the engine developer a lot of flexibility in the language itself.
Artists tend to love Lua too because it's very approachable, with plain and forgiving syntax.
Lua is free open-source software, distributed under a very liberal license (the well-known MIT license).
Pro Active and very friendly community
The LÖVE forums are extremely helpful. With people checking the forums every day, it won't take long to receive answer to your questions on the Support board, receive feedback on games you post in the Projects board, as well as have a chat about the LÖVE engine while learning tricks to use in the very active General board.
If you need an immediate answer though, or just want to chat, there is a very active and helpful IRC channel.
Supports Windows, Mac OS X, Linux, Android and iOS.
Pro Open source and free
The LÖVE engine is licensed under The zlib/libpng License (which is very short and human readable) which allows you to use the source code and even modify it as long as you do not claim that the original source code is yours.
You can obtain the code at this bitbucket repository and even help fix bugs and participate in the development of LÖVE.
Pro Great for prototyping
You can learn the basics very quickly and start making simple games in no time, even if you have no previous Lua knowledge. If you're a little experienced with LÖVE, you can prototype a 2D game with it in no time.
Pro Very good for education
That is a great tool for teaching novice programmers. Creating a game on LÖVE, you have to think about developing, not about the syntax of the language.
Pro Easy to understand and use
Lua2D handles loading the resources, reading input, playing sounds and displaying stuff on the screen. Only the logic is left for the developer to write. It also removes the overhead of having to use and learn a GUI game editor. All you need is a knowledge of Lua and your favourite text editor or IDE.
Pro Very good documentation
The LÖVE wiki provides full documentation of its easy to use Modules, which are conveniently located on the side bar of the wiki. It only takes seconds to find the module for love.keyboard, which provided a list of all functions along with arguments and examples where the function could be used.
Pro Many examples and libraries with source code
There are plenty of open source examples of games or components built by the community that are ready to use or learn from.
Pro Can develop within Android
It is possible to develop games directly on a tablet or cellphone with the Android system by using the experimental Android branch.
Pro Cute name
So much love.
Pro C++ and Lua one of the best languages for gamedev
Because all professionals in gamedev use C++, and Lua the fastest scripting lang.
Starling is just 12k lines of code and doesn't try to do everything — but what it does, as efficient as possible.
Pro Feathers User Interface Components
With Feathers, you can easily add great user interfaces to your games — or even create business apps with Starling.
Pro Free and open source
Starling is available for free with code available on GitHub.
Pro Strong community support
Forum is always active with knowledgeable developers and with lot of inside info, and post mortems.
Pro Works with Flash
With UI, you can design it in Flash Professional (powerful 2D editor), export to swf file, use GAF convert swf file to gaf file, finnally, load gaf file to Starling. GAF can convert a lot of file swf to one atlas. Alway use same resource in design files (fla) to optimize atlas size, avoid duplicate asset in atlas.
You can use flash to create animation for starling.
Pro Hardware accelerated rendering
Let the GPU do the rendering, the CPU has more important tasks to do.
Pro Cross Platform
It can be exported to web flash player, iOS, Android, Windows, and OS X
Pro Works with AIR's native extensions
Using AIR's native extensions any native code that can be written can be run and used by the game engine.
Pro Constantly updated
New features are added regularly.
Pro Better performance than most alternatives
Starling can run more animated display objects than Unity2D and many others frameworks at 60 fps.
Con Not very powerful
The engine has very few modules and only the really required one, you'll have to do almost everything from scratch.
Con Uses hg to version-control, not git
If the source codes were controlled by git, it would be more convenient for more programmers to contribute to Love2d.
Using hg on bitbucket resulted in loss of tons of users.
Con The community seems juvenile
For example, some of the library include names such as HUMP, LUBE, AnAL.
Con Documentation is very dry and technical
The site has plenty of tutorials, true, but they all read very technical, and explain very little. This might be too much for beginners, even for coding purposes, because of the fact that the specifics aren't explained well enough to learn effectively. The docs can be found frustrating to understand even the basics, such as tables or the like, because of how poorly they are explained, and how few examples are given before expecting you to be able to use them.
Con Absolutely no GUI (no graphical interface)
This has no graphical interface at all, you have to know how to read script in order to know what you're looking at. After you've written the script for everything, you compile it to see the result. It's a very poor way to create a game, given how even most professional tools out there give you a GUI to work with and debug on the go. The lack of a GUI slows down the work by ten-fold, and it's just an inefficient use of your time.
Con Poor text/font support
It supports only 4 features for text rendering:
- bitmap font with batching.
1.1. basic distance fields with support for outline and filters via MeshStyle.
1.2 the new multichannel distance field, the ultimate solution for bitmap font rendering.
- Draw and upload texture in runtime
So every new text field required texture uploads or vertex/idnex buffer uploads.
skipUnchanchagedFrames keep the backbuffer static for scenes without changes between frames, leveraging a good rendering optimization.
Con Engine supported mainly by one man
Its open source but in most cases community features or pull request are canceled.