Cub3D main features:

  • Python 3.6 and 2.7 interpreters, customised for, and programmable within, Cub3D.
  • The Panda3D engine at the core, built for Android! Write mobile applets that run on desktop machines too!
  • Bullet, ODE and Panda physics, for soft and rigid body simulation.
  • OpenAL Audio and OGG/Vorbis – combined with Android FastTrack for lag-free sounds.
  • Freetype for custom font support.
  • Instantaneous running, editing, and re-running of scripts. No waiting for compilers to rebuild your project!
  • Highly optimised, separate ARMv7a and x86 binaries for best performance on your device.
  • Live, interactive, game-style ‘pull-down’ console, with full Python support. Modify applets whilst they run!
  • Add your applets to the native Home Screen with proper icons.
  • Single-line, completely customisable virtual overlays, with automatic screen calibration, for:
    • D-pads
    • Buttons
    • Analog sticks
  • The purchasable add-on library (30 days free) includes:
    • Fully programmable multitouch support.
    • Super-fast performance for sensors. Includes support for accelerometer, gyroscope, compass, light, and more. Read and react on the sensors at full frame rate!
    • GPS support for location-aware applets.
    • Pip included, for downloading and installing plugins.
  • Sound/signal generator with full ADSR support.
  • Call almost all native Android Java code from inside Python.
  • Add true parallel processing with a background service.
  • Native Bluetooth (& GATT extensions), for external controllers and devices. Tested with Dialog Semiconductor’s DA14583 IoT sensor dongle.
  • Only ~60MB download for everything combined, including 35 sample applets.

In-app purchasable editor (30 days free) includes support for:

  • Editing Python 3.6 and 2.7 code, and optionally GLES 2 shaders.
  • Syntax and block highlighting.
  • Multiple tabs/scripts loaded at once.
  • Huge files. Load a script tens of thousands of lines long (if you wish) and it will still be just as fast!
  • Bubble comments — which float above your code!
  • Run your script within the editor and watch the changes in your 3D environment.
  • Simplified, custom stack views for aiding debugging, and taking you straight to code.
  • Configuring and packaging your scripts and applets.
  • Use a screenshot of your applet for its Carousel icon.
  • Create secure X.509 certificates on the device for signing your applets and authenticating future updates.
  • Create templates for your own APK files, which you can sell on the store (Cub3D required).

Other features include:

  • Applets run on smartphones, tablets, TVs, and even a selection of Android smartwatches.
  • Run applets and scripts from a micro SD card, without root!
  • Change-based update system so you can send or recieve tiny update files for applets.
  • Python’s Numpy and PIL imaging library.

Extra features if you do connect to a PC. You can:

  • View realtime, detailed performance benchmarks over Wi-Fi, so you can maximise your applet’s performance!
  • View more detailed console output (with Android’s ‘logcat’ — you can still debug within your applet).
  • Use Blender to create standard Panda3D/Cub3D custom models, and any other package to create textures.

Scientific modules built:

  • Numpy (included out-of-box)
  • SciPy
  • MatPlotLib
  • H5Py & HDF5
  • HWRT
  • NatSort
  • NNToolkit
  • YAML

Cub3D has been tested from everything from Android 2.3 to Android 8.0 (and should work beyond that). Emulators can find it difficult to render the interface and environment due to the extensive OpenGL translation going on, so please use a real device for testing. A few devices can also apparently have buggy OpenGL drivers, but I have observed Cub3D running in the most restrictive of environments.

Warning!The Play Store’s textual content and pricing strategy has been altered since my initial post.

Cub3D was designed for a previous employer. Please contact them via the Android Play Store for enquiries.