Skip to content
forked from BLOCKvIO/3D-Face

This vAtom face can plug into the SDKs to render 3D content in either binary glTF or V3D format.

License

Notifications You must be signed in to change notification settings

VatomInc/3DFace

 
 

Repository files navigation

3D Face

This is a face for the Android, iOS and Web BLOCKv SDKs, which allows rendering and interacting with 3D vatoms.

Usage in the Android SDK

First add it to your gradle dependencies:

//  In root build.gradle
allprojects {
  ...
  repositories {
    ...
    maven { url "https://jitpack.io" }
  }
}
//  In app/build.gradle
dependencies {
    implementation 'com.github.VatomInc:3d-face:+'
}

Then register it on app startup:

// Kotlin
import io.blockv.face3d.Face3D

blockv.faceManager.registerFace(Face3D.factory)
// Java
import io.blockv.face3d.Face3D;

blockv.getFaceManager().registerFace(Face3D.Companion.getFactory());

Usage in the iOS SDK

First add it to your podfile:

pod 'VatomFace3D'

Then register it on app startup:

import BLOCKv
import VatomFace3D

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    ...

    FaceViewRoster.shared.register(Face3D.self)

}

Usage in the Web SDK

To use in the Web SDK, simply import and register when your app starts up:

import { VatomView } from '@vatom/sdk/face'
import Face3D from '@vatom/3d-face'

VatomView.registerFace(Face3D)

Specification

  • Display URL: native://generic-3d

Building

To build, run npm run build. This results in running these scripts in this order:

  • build-lib will compile the face code into dist/Face3D.min.js
  • copy-webapp will copy all the files in dist/ and put them into webapp/. This is the folder containing the wrapper web app the native apps use. The iOS library uses these files directly.
  • copy-android copies all files in webapp/ into the Android project's assets/ folder. This is because I couldn't get the Android gradle build process to read these files directly.

About

This vAtom face can plug into the SDKs to render 3D content in either binary glTF or V3D format.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 86.4%
  • Swift 8.9%
  • Kotlin 3.8%
  • Other 0.9%