When comparing Monkey X vs PlayCanvas, the Slant community recommends Monkey X for most people. In the question“What are the best 2D game engines?” Monkey X is ranked 27th while PlayCanvas is ranked 65th. The most important reason people chose Monkey X is:
Developers can make native calls directly from Monkey code. This allows access to any native functionality and platform-specific features.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Native code support
Developers can make native calls directly from Monkey code. This allows access to any native functionality and platform-specific features.
Pro Native module support
You are not restricted only to the modules you get from the official release. You can build your own stuff. Even build your own "app" module. It feels limitless. In comparison with other cross platform solutions, you actually get the translated source code and you can play with it if you want.
Pro Built-in modules for quickly building games
Monkey X has a selection of great built-in modules.
- Graphics
- Audio
- Input
- Data and Filesystems
- Networking
- Math
- Text and Strings
- Collections
- Online Services
Pro You can create custom targets
The language gives you the possibility to build your own targets. You are not limited to the targets officially supported.
Pro Low cost license fee
All target platforms for a fair one off license fee.
Pro Easy to learn
With it's Object orientation and clean syntax its a brilliant language to learn if you have never done any programming before and yet still has all the power it needs to make full games and apps.
Pro Uses a great, easy to learn language
Monkey X uses a custom programming language (called Monkey) for all its scripting needs. Monkey is rather easy to learn, it's object-oriented which will help most programmers with understanding it. It's also statically typed and uses a garbage collector, helping to avoid manual memory management.
Pro Partly open-source
The entirety of the base-language itself is open source. Commercial modules such as Mojo for non-free platforms cost a one-time fee. Though Mojo is not free for all targets, the targets for these platforms are, meaning it is possible to implement other frameworks for these targets.
The Desktop (GLFW and C++ based) and HTML5 implementations of Mojo are currently free and open source.
The language's development is completely public, and is managed via GitHub.
Pro Free HTML5 and Desktop (GLFW) target platform
The free version of Monkey X lets you compile to HTML5 or Desktop (GLFW). Other platforms such as iOS, Android (and OUYA), XNA, Flash and Windows 8 (Phone) require the paid version of Monkey X Pro.
Pro Cross-platform
Monkey X is a cross-platform game engine. It allows developers to run the same code on multiple platforms, including iOS, Android, Windows Mobile, Flash, Windows, Mac OS and Linux.
The development environment supports Windows, OS X, and Linux.
Pro Not running in its own VM
Unlike other multi-platform engines (Unity3D, Corona, etc), Monkey-X games do not run explicitly in their own virtual machines. Your code is translated into the native languages of each target platform, and then compiled as a native executable. However, just as native games, on platforms such as Android (Currently), and HTML5, games will be ran through the targeted platform's usual VM(s). That being said, you won't be dealing with a proprietary virtual machine, so you won't experience any real overhead when compared to a native game.
Pro Made by the Mark Sibly Factor
The Mark Sibly Factor denotes that a programming language will be easy to learn, fun to learn and allow any age group ( within Cognitive Reason ) to program games and great games. The Mark Sibly Factor denotes also that the games programming language you purchase will be backed by decades of compiler programming experience, game making tool programming and finally a Game Programming Language that kicks Ass.
Pro Free for commercial releases
With the free version of Monkey you are still able to create commercial HTML5 and Desktop games.
Pro Many community modules available
The community has created essential modules:
- Spine for animations
- Box2D and Chipmunk for physics
- Game frameworks such as Ignition, fantomEngine, and Flixel
- Diddy for lots of extra functionality
- FontMachine for custom bitmap fonts
- MiniB3D for 3D gaming
- And several others...
Pro Drawing Commands
Drawing commands are easier to read and edit than is manipulating scene graphs. You can immediately see in your code what's going to be drawn and in what order. Transformations are a no-brainer too.
Pro Lots of great examples
Monkey X includes over 50 examples ranging from complete sample games to demos of single features.
Pro Object oriented programming
MonkeyX is an object-oriented dialect of BASIC that's easy, clean and powerful.
Pro Real-time collaborative online editor tool
PlayCanvas has an online editor that lets you build scenes and work with other people in your team in real-time. This is all done through the web browser without having to install any additional software.
Pro Powerful assets pipeline
Assets and content delivery is very different on a web platform comparing to native. So PlayCanvas challenges best practices to allow developers decide how their content is delivered and in what form.
Async Assets download allows developers to load content as the app goes, instead of asking to download all assets in advance risking users to simply navigate away while staring at loading screens.
Formats for 3D models and textures support covers all the popular tools. And the workflow is as simple as dragging and dropping your files right into the Assets Panel. The cloud will do the rest of the hard work optimizing and converting your files into runtime-friendly and compressed data.
Pro Rendering engine runs on the browser
Has an advanced WebGL renderer that runs in the browser.
Pro Avoids having to download lots of textures for lightmaps
Lightmaps are an efficient way to deliver lighting to your scenes for a long time. But they come with the cost of large textures. PlayCanvas offers a unique solution for a web platform, it renders lightmaps when an app is loading in runtime.
This is faster than downloading MBs of textures. And it's much more convenient: simply switch your light sources to bake, and static models to be lightmapped, and the engine will do the rest.
Pro Friendly and active community
PlayCanvas has Feed as homepage for registered users, listing Dev Logs of other developers. This allows to socialize with other developers like yourself in a twitter-like environment.
More to that, there is also an active forum, where developers help each other to solve their challenges.
Developers of PlayCanvas itself are always looking forward to chat and help the community with any problems that may arise.
Pro Integrated physics engine
PlayCanvas lets users integrate physics in their game rather easily, using the powerful Bullet Physics Engine (ammo.js). Should also be noted that the physics engine is delivered as an optional library, so by default being disabled it does not add any extra download size to your apps.
Pro Has a free tier
Engine is free for projects under 200MB and with no more than 2 people on a team. The free tier has no engine restrictions.
Tools are totally free too. There are no special limiting features behind any paywalls, and free users have all the features as paid users.
There are no royalties associated with publishing your apps and games - you've made them, you own them.
It is free to publish to playcanvas.com as well, just by one click in Editor.
Pro Cross-platform support
PlayCanvas lets you build games that run in mobile, desktop browsers, and native mobile apps. PlayCanvas can even make games that can run inside mobile social media and instant messenger clients like Twitter and WhatsApp.
Pro Small app size
The engine itself weighs just under 150Kb, and it's always challenged to stay small. There is no extra weight that has to be carried with your app, just your assets and scripts in a runtime-friendly compressed form.
This allows users to engage with your content in matter of seconds, and even just under a second on a good connection.
Pro Open source
PlayCanvas is fully open source and is under active development.
Pro Very easy to use
Pro Loads extremely fast
Pro Has hot code reloading
Real-time link between your launched app and the editor allows the developer to preview and play with their scene without needing to refresh the game after every change in the code to see the updated result.
Cons
Con You'll have to learn a new programming language
Even though Monkey is rather easy to learn and borrows a lot of concepts from more popular languages, having to learn a new language develop games is a lot of friction for people that already know how to program in other languages..
Con The documentation is not very thorough
The documentation contains a reasonably detailed language overview, and a somewhat-generated list of the included modules, classes, and methods. Module descriptions are rather lax, but usually present. Method descriptions tend to be short, and a majority of them contain no usage snippets; most parameters have very minimal descriptions. And there are no community collaboration features to help improve it, besides GitHub.
Con The included IDE is poor
Although better IDE'S are availabe for a price, the default one is bare bones and lacks functionality
Con No real asset store
Untangling how to keep assets in the ".data" requires attention and a filenaming convention.
Con limited OS export targets with free version
Free version only targets Desktop (macOS, Windows, Linux) and HTML5, not mobile.
Con Private projects are only available for premium users
The free tier does not support any private projects. Instead, all the code and assets will be hosted openly. While not a problem for open source games and for developers who intend to make an open source game, it can be a deal-breaker for teams who want to keep their code and assets private.