Skip to content

Sceneform-EQR extends Google’s Sceneform Android SDK, supporting graphics, video, AR, and VR applications. It integrates ARCore, AREngine, and ORB-SLAM, and provides AR, VR, and custom background scenes to meet diverse native 3D development needs.

License

Notifications You must be signed in to change notification settings

eqgis/Sceneform-EQR

Repository files navigation

Sceneform-EQR is an extension for Google's Sceneform Android SDK, designed for applications in graphics, video, augmented reality (AR), and virtual reality (VR). It currently integrates ARCore, AREngine, and ORB-SLAM, and offers multiple scene options—including AR scenes, VR scenes, and custom background scenes—to support a wide range of native 3D development needs.

Sceneform - EQR

The EQ-Renderer module is now open-source. It includes integrations with AREngine, ORB-SLAM, and other extensions based on Google's Sceneform SDK.


GitHubeqgis/Sceneform-EQR GitHub stars

GitCodeEQXR/Sceneform-EQR Sceneform - EQR


Filament

ARCore

AREngine


Introduction

Sceneform is a 3D framework featuring a physically-based renderer optimized for mobile devices. It allows you to easily build augmented reality (AR) applications without directly using OpenGL.

(Sceneform) EQ-Renderer is an Android-native 3D renderer built as an extension of Sceneform. It currently supports ARCore, AREngine, and ORB-SLAM, making it a fast and flexible tool for AR development.


Getting Started

Directory Structure

  • Eq-Renderer: A rendering library for Android, extended from Sceneform (based on Filament)
  • SampleProj: Sample application project
├─Eq-Renderer
│  └─Android
│      └─eq-renderer
└─SampleProj
    └─app

Run the Sample

  1. Open Android Studio
  2. Go to File > Open, select SampleProj, and click OK
  3. Click Run 'app' to launch the app module

API Documentation

sceneform-eqr is an extension of Sceneform. Its APIs are largely consistent with those of the original Sceneform.

You can refer to the following official documents for more information on Sceneform usage:

Note: Sceneform versions 1.15 and earlier use .sfa and .sfb formats for loading models. Starting from version 1.16, only GLTF 2.0 models are supported via gltfio. See Filament for details.


Blog Series

EQ-Renderer is an Android-native rendering engine based on Google's Sceneform (Filament). The blog series below walks through how to use it with Android Studio for efficient development.

CSDN Blog Sceneform-EQR: Android Native 3D Rendering Engine

CnBlogs Android Native AR Development


Feature Preview

  • Load GLTF models in standard 3D scenes

  • Load GLTF models in AR scenes

  • Render a sphere (using an equirectangular projection map as the texture)

  • Support for GLTF model animation

  • Tap gesture interaction

  • Gesture-based model manipulation: (One-finger rotate, two-finger pan, two-finger zoom)

  • Example: AR Launcher

    Render native Android Views in AR

    Dual-screen display support, useful for XR glasses

  • Example: AR Graffiti (Custom textures, animated textures, video textures, displacement mapping)

    Breathing effect using custom materials compiled with Filament's matc tool

    Flowing texture using a video as texture map


Repository

You don't need to compile the Eq-Renderer source. Just use the AAR.

Repository: http://repo.eqgis.cn/com/eqgis/eq-renderer

maven {
    allowInsecureProtocol = true
    url "http://repo.eqgis.cn"
}

License Notice

This repository contains multiple branches with different licensing policies:

  • Branches that include or depend on eq-slam ORB-SLAM3 is licensed under GPLv3, a strong copyleft license, and the eq-slam library incorporates ORB-SLAM3. Therefore, any branch that includes eq-slam, modifies eq-slam, or directly links to eq-slam via JNI must be distributed under the GPLv3 license.
  • Branches that do not include eq-slam The main branch is released under the Apache License 2.0 by default and is not affected by GPLv3.

Why This Structure?

GPLv3 requires that derivative works be distributed under GPLv3. To avoid imposing GPLv3 on the entire repository, we separate GPL-affected code into dedicated branches. Other branches that do not include GPL-related components remain Apache-licensed.

Important Notes

  • If you create a new branch based on a GPL branch, the new branch must also remain GPLv3.
  • If you remove all GPL-related code and dependencies, you may switch that branch back to Apache 2.0.
  • The licensing difference applies at a branch level, not the entire repository.

For full license text, refer to:

  • LICENSE-GPLv3 (for GPLv3 branches)
  • LICENSE (Apache 2.0 for other branches)

📣 Latest Project Updates

This section records the latest promotional activities, community engagement, and multi-platform development progress of the project.

  • Multi-Platform Collaboration Progress:

  • July 2025 Update:
    The project has completed bi-directional synchronization between GitHub and GitCode, ensuring smooth collaboration and access for users worldwide.

📌 This section will be continuously updated. If you discover promotional content or media coverage about this project on other platforms, feel free to let us know via an Issue. Let's build a better open-source ecosystem together!

About

Sceneform-EQR extends Google’s Sceneform Android SDK, supporting graphics, video, AR, and VR applications. It integrates ARCore, AREngine, and ORB-SLAM, and provides AR, VR, and custom background scenes to meet diverse native 3D development needs.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages