When comparing Scratch vs Orx, the Slant community recommends Orx for most people. In the question“What are the best 2D game engines?” Orx is ranked 5th while Scratch is ranked 42nd. The most important reason people chose Orx is:
Powerful config system that makes orx data-driven and provides an easy to use load/save system.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Visual
Code is represented as visual building blocks that makes it easy to understand how a program is put together.
Pro Great starting point for kids
Scratch was developed specifically for kids ages 8 and up as an exciting way to introduce them to technology. It's designed to be easy to learn, but still provides good depth in computational thinking.
Pro Easy to learn
Scratch is designed to teach computational thinking rather than focus on specific syntax. It was designed specifically to be easy to learn for anyone over the age of 8.
Pro Highly structured
The language is highly structured. Therefore, it gives you the essentials of how to think like a programmer and teaches you good programming practices from early on, so you could write clean, working and readable code in the future.
Pro No need to be able to type
Pro Can be used to create games
Pro Powerful config system
Powerful config system that makes orx data-driven and provides an easy to use load/save system.
Pro Friendly community
Good friendly development community ready to help each other with tips and advice for setting up and best practices.
Pro Automatic hot-loading of resources
Automatic hot-loading of resources upon modification on disk, shortens drastically iteration times.
Pro High performance
Written in C with high emphasis on memory and CPU efficiency.
Pro Supports desktop and mobile
Supports Windows, Linux, Mac OS X, iOS and Android.
Pro Data configuration
Orx is a Data Driven engine that greatly reduces required code. You can configure object definitions, bodies, cameras, sound, animation, event tracks, etc.
Pro Custom shader support
GLSL code can be added straight into data configuration files and can be applied to any texture: background or objects whivh allows for some amazing effects. All GLSL versions are supported, again by providing the shader language version in your configuration file.
Parameters are supported and values over time for shader animation.
Pro Flexible clock system
Clock system that provides time consistency and allows time stretching + high precision timers
Pro Flexible and simple FX
Color and translation FX are simple to configure and apply to objects.
Pro Good animation engine
Includes a chaining graph & custom animation events for synchronization.
Pro Free and open source
Uses the zlib license. Lets you use Orx for free for any kind of projects, even for commercial ones.
Pro Input controls and binding
All input devices are fully supported: Joysticks, Mouse, Gamepad, Keyboard and Touchscreen. Multiple physical devices and be mapped the same binding.
Pro Excellent results on performance benchmark
Rated the fastest engine in the OpenFL’s BunnyMark since October 2015.
Pro Great audio support
Samples for sound effects, or streams for music. All sounds can be groups via audio buses just like in a typical DAW (Digital Audio Workstation).
All sounds can be spatial relative to the camera.
Pro Viewport scheme allowing multiple views
Camera/viewport scheme allowing multiple views displayed with camera translation, zoom and rotation.
Pro Good render support
Fragment (pixel) shader support, render to texture, MRT, easy composition and custom rendering support.
Pro Easy post-processing/compositing for complex visual effects
Pro Integrated runtime profiler
Integrated runtime profiler (with graphical display) to easily spot which parts of your game need to be optimized.
Pro Collision handling and rigid body physics
Pro Screenshot capture tool
Supports .bmp, .png, .jpg, .tga and .dds
Pro Multi-Threading
Pro Great IDE Support
Out of the box Windows support for:
- Visual Studio
- Codelite
- CodeBlocks
- gmake
Out of the box Mac support for:
- XCode
- Codelite
- gmake
Out of the box Linux support for:
- Codelite
- CodeBlocks
- gmake
Pro Well-supported C++ wrapper
Orx provides a excellent c++ wrapper for object oriented design, called: orx/Scroll. You can, of course, roll your own.
Cons
Con For kids
For kids.
Con Won't get you a job
Scratch is not a language used in the workplace. Instead it teaches computational thinking, helping to create a foundation to aid in learning other languages.
Con Does not teach you programming
Learning Scratch might help you if you have high difficulty with logical thinking. However, starting with a proper programming language, especially an easy one, will give you the benefits of starting with something like Scratch and everything else.
Con Strange OOP
Scratch has a very strange implementation of OOP that is sprite based, and will become very confusing when you move to other languages.
Con Weird
It's straight up weird.
Con Feature discovery and explanation could be better
Some features are not well explained / highlighted: for example, unless you use the interactive project initialization, you have to go over the tutorials and examples in the wiki to learn that there is an optional C++ layer, Scroll, developed on top of the C API. Similarly, some major information are missing from the website, wiki and Doxygen documention, and are left for the users to discover in source headers and INI template files, or by searching the forum (e.g. the 0,0 coordinate being the center of the screen and not top left, the list of all Orx scalar types and their use, etc).