When comparing LÖVE vs Panda3D, the Slant community recommends LÖVE for most people. In the question“What are the best 100% free and easy game engines for beginners?” LÖVE is ranked 2nd while Panda3D is ranked 7th. 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.
Pro Free, open-source, and permissive license
The liberal license allows use of the engine for any purpose without restrictions or royalties.
Pro Will be very easy for developers already familiar with Python
Although it's possible to use only C++ to program in Panda3D, all its power is available to the Python scripting language, while not trading in performance since the performance-critical parts are implemented in C++.
It has a powerful binding layer that exposes the vast majority of the API via Python-based interfaces.
Pro Flexible scene and object hierarchy system
Creating weird world constructs is generally a breeze. The node system the engine runs with allows to build self-looping worlds and, on large scale, non-Euclidean scenes without having to introduce a huge amount of custom code.
Pro Supports most popular physics engines
Panda3D has in-depth integration with industry standard physics engines such as Bullet, NVIDIA PhysX and ODE, but also offers a simpler built-in physics engines that will cover more basic needs.
Pro Powerful profiling and debugging tools
Panda3D has a suite of powerful tools to help track down performance bottlenecks, memory leaks and examine internal state.
Pro Supports browser deployment
Panda3D offers web plug-ins that allow deployment of an application to all major browsers. A WebGL port is in the works as well.
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 No unified editing program
Unlike Unity and Unreal, Panda3D doesn't currently offer a single, unified editing program in which objects can simply be dragged in and assigned properties (although third-party solutions are available). Developers are expected to design their scenes in a modelling program like Maya or Blender instead, and import them into Panda3D using Python code.
Con Direct3D support is behind
Direct3D support not up to par with OpenGL support, only version 9 is supported
Con Loading Pandas3d will change your builtins to contain non explicit references to non-standard helper functions
A lot of the pollution comes from storing global state. Instead, you can store and update the global state of a namespace instead. As for the built-in pollution, you can make a wrapper that backs up builtins, imports pandas and then restores builtins, though this may not work as pandas almost certainly uses it's extra builtins to work. The best thing to do would be to explicitly import the same objects that are in the builtins over the top of the modified builtin namespace, although it doesn't remove the code smell, it helps to make things look less (if not at all) magic.