Build Status
News
06/23/2017 Bombshell 1.1.970
has been released. It fixes behavior of Objects of zero size, TextureView, TextureManager, Toon Shader color setters, custom shaders and more... It also adds preprocessor directive support for shader plugins, configurable skybox geometry, and extends our Unit Text Framework.
11/16/2016 Bombshell 1.1.777
has been released. It fixes a small number of bugs and adds a Scan Line post processing effect (thanks @contriteobserver).
9/7/2016 The official release of Bombshell 1.1.610
is out. We will continue to support this release moving forward how ever bug fixes will be minimal. The decision was made that the design of the core engine was inhibiting correcting some of the larger issues. To this end, we have begun development of a 2.0
version - see issue 1755 for details. Development is happening in the v2.0-development
branch here
8/29/2016 An initial effort for adding unit testing to Rajawali has been made. This initial focus has been on the core math classes and will ideally expand as bug fixes progress. Pull requests for unit tests are welcome and any "bug fix" PRs which include unit tests or issues which include unit tests to demonstrate a failure will be given the highest priority.
General
Rajawali is a 3D engine for Android based on OpenGL ES 2.0/3.0. It can be used for normal apps as well as live wallpapers.
Want to keep the developers going? Buy them a beer! (http://www.pledgie.com/campaigns/21807)
Join the Rajawali Community on to stay up-to-date on the latest news.
The RajawaliExamples project is an ever growing toolkit for developing 3D content. Check it out!
Made With Rajawali
Numerous apps and live wallpapers have been made with Rajawali. Check them out!
Using Rajawali with mavenCentral()
Using Rajawali is as simple as adding a single line to your gradle dependencies:
implementation 'org.rajawali3d:rajawali:x.x.x@aar
where x.x.x is the version number (and the last number is the build number). If you wish to use the master
branch snapshot, append -SNAPSHOT
. For example, to use release 1.0.325
, you would use:
implementation 'org.rajawali3d:rajawali:1.0.325@aar
To use the master
branch build 48 snapshot 1.0.48-SNAPSHOT
, you would use:
implementation 'org.rajawali3d:rajawali:1.0.48-SNAPSHOT@aar
All commits to master
and development
branch are deployed as snapshots. All tags will be deployed as releases. To see the latest build number, see the build history and be sure you choose a master
branch build.
For the above to work you will need to make sure your repository list includes:
mavenCentral()
for releases, and maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
for snapshots.
Alternatively, if you checkout Rajawali via GIT, you can run gradle assembleRelease uploadArchives
(or simply add a Gralde launch config to Android Studio for the assembleRelease
and uploadArchives
tasks). This will deploy to your local maven repository. Consuming apps should have mavenLocal()
in their repository list and add implementation 'org.rajawali3d:rajawali:1.0.0-SNAPSHOT@aar
to their dependencies.
Using Rajawali with Jitpack
Just add the following lines to your build.gradle
Here you see more details https://jitpack.io/#rajawali/rajawali
dependencies {
implementation "com.github.rajawali:rajawali:$latest_version"
}
To tell Gradle where to find the library, make sure build.gradle
also contains this:
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
Rajawali Examples On The Market
Rajawali + Augmented Reality
YouTube Video of RajawaliVuforia in action
Rajawali + Virtual Reality
YouTube Video of RajawaliVR in action
Tutorials
- Basic Setup & Sphere (Maven)
1. Basic Setup & a Sphere (Out of date) - Creating a Live Wallpaper and Importing a Model
- Materials
- Optimization
- [Skybox] (https://github.com/MasDennis/Rajawali/wiki/Tutorial-05-Skybox)
- [Screenshots] (https://github.com/MasDennis/Rajawali/wiki/Tutorial-06-Screenshots)
- [Plugins] (https://github.com/MasDennis/Rajawali/wiki/Tutorial-07-Plugins)
- [User Interface Elements] (https://github.com/MasDennis/Rajawali/wiki/Tutorial-08-Adding-User-Interface-Elements)
- Creating a Custom Material GLSL Shader
- 2D Renderer
- Particles
- Object Picking
- Animation Classes
- Bump Normal Mapping
- MD2 Animation
- Collision Detection
- Importing .Obj Files
- Drawing Lines
- Catmull Rom Splines
- Animated Sprites
- Fog
- More Optimisation
- Custom Vertex Shader
- Using Geometry Data To Position And Rotate Objects
- Video Material
- Orthographic Camera
- Texture Compression
- Transparent Textures
- Skeletal Animation
- Creating a Day Dream
- [Using RajawaliScene] (https://github.com/MasDennis/Rajawali/wiki/Tutorial-31-Using-RajawaliScene)
Tutorials & Articles By Others
- (Kean Walmsley from Autodesk) Creating a 3D viewer for our Apollonian service using Android Part 1 Part 2 Part 3
- Rajawali と戯れる Part 1 Part 2 (Japanese)
- Introducing Plugin Architecture for Rajawali
- Object Occlusion Testing in Rajawali
- Ниже пример как сделать простую 3D модель и запустить сцену на Android(Russian)
- Android in razvoj 3D igre(Slovenian)
- Rajawali là gì?(Vietnamese)