procedural-3d-engine/android
2017-08-07 22:02:56 +02:00
..
bloom Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
computecloth Added compute cloth example Android build files 2017-08-07 22:02:56 +02:00
computecullandlod Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
computenbody Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
computeparticles Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
computeshader Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
debugmarker Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
deferred Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
deferredmultisampling Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
deferredshadows Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
displacement Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
distancefieldfonts Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
dynamicuniformbuffer Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
gears Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
geometryshader Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
hdr Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
images Removed old android images, small change to build.bat (#97) 2016-03-25 21:14:00 +01:00
imgui Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
indirectdraw Removed old python build scripts, replaced with json example definition files 2017-06-15 11:40:05 +02:00
instancing Removed old python build scripts, replaced with json example definition files 2017-06-15 11:40:05 +02:00
layers Update notes on android builds, added info about validation layer builds 2017-06-17 11:32:20 +02:00
mesh Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
multisampling Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
multithreading Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
occlusionquery Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
offscreen Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
parallaxmapping Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
particlefire Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
pbrbasic Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
pbribl Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
pbrtexture Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
pipelines Removed old python build scripts, replaced with json example definition files 2017-06-15 11:40:05 +02:00
pushconstants Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
radialblur Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
raytracing Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
scenerendering Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
shadowmapping Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
shadowmappingomni Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
skeletalanimation Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
specializationconstants Removed old python build scripts, replaced with json example definition files 2017-06-15 11:40:05 +02:00
sphericalenvmapping Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
ssao Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
subpasses Removed old python build scripts, replaced with json example definition files 2017-06-16 21:21:55 +02:00
terraintessellation Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
tessellation Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
textoverlay Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
texture Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
texture3d Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
texturearray Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
texturecubemap Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
texturemipmapgen Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
triangle Removed old python build scripts, replaced with json example definition files 2017-06-15 11:40:05 +02:00
vulkanscene Removed old python build scripts, replaced with json example definition files 2017-06-17 11:31:28 +02:00
build-all.py Added compute cloth example Android build files 2017-08-07 22:02:56 +02:00
build.py Fix Android install script issue: 2017-06-26 14:04:31 +08:00
cleanup.bat Replaced windows batch files with (extended) python scripts (Refs #297) [skip ci] 2017-03-18 16:19:52 +01:00
install-all.py Fix Android install script issue: 2017-06-26 14:04:31 +08:00
README.md Update notes on android builds, added info about validation layer builds 2017-06-17 11:32:20 +02:00
uninstall-all.py Added compute cloth example Android build files 2017-08-07 22:02:56 +02:00

Vulkan examples on Android

Vulkan on Android

Since Vulkan is not yet part of the Android OS (like OpenGL ES) the library and function pointers need to be dynamically loaded before using any of the Vulkan functions. See the vulkanandroid.h and vulkanandroid.cpp files in the base folder of the repositoy root for how this is done.

Device support

  • To run these examples you need a device with an Android image that suports Vulkan
  • Builds currently only support arm-v7, x86 may follow at a later point
  • Android TV leanback launcher is supported, so the examples will show up on the launcher
  • Basic gamepad support is available too (zoom and rotate)
  • Basic touch control support (zoom, move, rotate, look)

Building

Requirements

  • Android NDK r11b (or newer) - Somewhere in your search path
  • Examples are built against API level 23 (requires the SDK Platform installed)
  • Python 3.x

Building the Examples

Complete set

Please note that building (and deploying) all examples may take a while

Build only

build-all.py

This will build all apks and puts them into the bin folder.

Build and deploy

install-all.py

This will build all apks and deploys them to the currently attached android device.

Single examples

These are for building and/or deploying a single example.

Build only

Call build(.bat) with the name of the example to build, e.g. :

build.py pbrtexture

This will build the apk for the triangle example and puts it into the bin folder.

Build and deploy

build.py pbrtexture -deploy

This will build the apk for the triangle example and deploys it to the currently attached android device.

Validation layers

build.py pbrtexture -validation (-deploy)

Builds the apk, adds the validation layer libraries and enables validation via a compiler define.

Note: You need to manually build the validation layers and put them in the proper folder. If the libaries are not present they won't be included with the apk and running the app will fail.

Removing

A single file for removing all installed examples is provided in case you installed all of them and don't want to remove them by hand (which is especially tedious on Android TV).

uninstall-all.py

This will remove any installed Android example from this repository from the attached device.