Alter SDK is a cross-platform SDK consisting of a real-time 3D avatar system, facial motion capture, and an Avatar Designer component built from scratch for web3 interoperability and the open metaverse.

Overview


Alter SDK
Alter SDK

Alter SDK is a cross-platform SDK consisting of a real-time 3D avatar system, facial motion capture, and multi-platform components for creating avatars (Avatar Designer). The SDK is built from scratch for web3 interoperability and the open metaverse. Easily pipe avatars into your game, app, or website. It just works. Check out the included code samples to learn how to get started with Alter SDK.

Please star us on GitHub—it motivates us a lot!

📋 Table of Content

🤓 Tech and Avatar Specs

🚉 Supported Platforms

See alter-core for detailed technical specifications about the rendering and motion capture.

Avatar Formats

  • Head only
  • A bust with clothing
  • A bust with clothing and background (Soon)
  • Accessories only (for e.g. AR filters) (Soon)
  • Full body (Soon)

🌈 Variability

  • Human and non-human
  • From toddler to skeleton
  • Genders and non-binary
  • Full range of diversity

🤪 Motion Capture

  • 42 tracked facial expressions via blendshapes
  • Eye tracking including eye gaze vector
  • Tongue tracking
  • Light & fast, just 3MB ML model size
  • Simultaneous back and front camera support
  • Powered by mocap4face

💿 Installation

Prerequisites

Register in Alter Studio to get a unique key to access avatar data from our servers.

See our example code to see where to put the key. Look for "YOUR-API-KEY-HERE".

iOS

To run the example, simply open the attached Xcode project and run it on your iPhone or iPad.

Do not forget to get your API key at studio.alter.xyz and paste it into the code. Look for "YOUR-API-KEY-HERE".

SwiftPackage Installation

Add this repository as a dependency to your Package.swift or Xcode Project.

Manual iOS Installation

Download the AlterCore.xcframework from this repository and drag&drop it into your Xcode Project.

Android

To run the example, open the android-example project in Android Studio and run it on your Android phone.

Do not forget to get your API key at studio.alter.xyz and paste it into the code. Look for "YOUR-API-KEY-HERE".

Gradle/Maven Installation for Android

Add this repository to your Gradle repositories in build.gradle:

repositories {
    // ...
    maven {
        name = "Alter"
        url = uri("https://facemoji.jfrog.io/artifactory/default-maven-local/")
    }
    // ...
}

// ...
dependencies {
    implementation "alter:alter-core:0.13.0"
}

📄 License

This library is provided under the Alter SDK License Agreement. The sample code in this repository is provided under the Alter Samples License.

🚀 Use Cases

Any app or game experience that uses an avatar as a profile picture or for character animations. The only limit is your imagination.

  • Audio-only chat apps
  • Next-gen profile pics
  • Live avatar experiences
  • Snapchat-like lenses
  • AR experiences
  • VTubing apps
  • Live streaming apps
  • Face filters
  • Personalized stickers
  • AR games with facial triggers
  • Role-playing games

Known Limitations

This is an alpha release software—we are still ironing out bugs, adding new features and changing the data:

  • Item names within an Avatar Matrix can change
  • The SDK is still not 100 % thread safe and race conditions or memory leaks can occur rarely
  • Documentation is very sparse, make sure to join our Discord or file an issue if you encounter problems

❤️ Links

You might also like...
ResearchKit is an open source software framework that makes it easy to create apps for medical research or for other research projects.
ResearchKit is an open source software framework that makes it easy to create apps for medical research or for other research projects.

ResearchKit Framework The ResearchKit™ framework is an open source software framework that makes it easy to create apps for medical research or for ot

Project Flat iOS is the iOS client of Agora Flat open source classroom.
Project Flat iOS is the iOS client of Agora Flat open source classroom.

Agora Flat iOS Project flat is the iOS client of Agora Flat open source classroom. 中文 Features Open sourced front-end and back-end [Flat Web][flat-web

An open-source task management app for daily general operations
An open-source task management app for daily general operations

Taskaholic An open-source task management app for daily general operations, sepa

LibreSDK - Open FreeStyle Libre

LibreSDK - Open FreeStyle Libre Since there are a dozen of repositories floating around on github trying to decode the contents of a FreeStyle Libre.

The Gini Bank SDK provides components for capturing, reviewing and analyzing photos of invoices and remittance slips.
The Gini Bank SDK provides components for capturing, reviewing and analyzing photos of invoices and remittance slips.

Gini Bank SDK for iOS The Gini Bank SDK provides components for capturing, reviewing and analyzing photos of invoices and remittance slips. By integra

Sample app to demonstrate the integration code and working of Dyte SDK for iOS, using Objective-C.
Sample app to demonstrate the integration code and working of Dyte SDK for iOS, using Objective-C.

iOS sample app (using Objective-C) by dyte Sample app to demonstrate the usage of Dyte iOS SDK Explore the docs » View Demo · Report Bug · Request Fea

MetaWear-Swift-Combine-SDK - Build iOS and macOS apps controlling MetaWear Bluetooth Low Energy wearables without C++ or CoreBluetooth expertise A Flutter plugin to wrap HyperPay SDK for iOS and Android.
A Flutter plugin to wrap HyperPay SDK for iOS and Android.

HyperPay Flutter Plugin This plugin is a wrapper around HyperPay iOS and Android SDK, it's still in alpha release, and supports limited set of functio

A simple to use iOS/tvOS/watchOS SDK to help get you off the ground quickly and efficiently with your Elastic Path Commerce Cloud written in Swift.

Elastic Path Commerce Cloud iOS Swift SDK A simple to use iOS/tvOS/watchOS SDK to help get you off the ground quickly and efficiently with your Elasti

Comments
  • Cannot inherit from non-open class 'TrackerResultAvatarController' outside of its defining module

    Cannot inherit from non-open class 'TrackerResultAvatarController' outside of its defining module

    Hi! I am trying to implement Alter SDK with Face Tracking feature, and asked how to do it on Discord. A kind person said that I can basically follow the js-example here.

    So I tried:

    class DeserializationAvatarController: TrackerResultAvatarController {
        private var deserializer: FaceTrackerResultDeserializer?
    
        init(avatar: Avatar) {
            super(avatar)
    ...
        }
    }
    

    But TrackerResultAvatarController class is not open, hence not being able to inherit.

    Am I misunderstanding something? It'll be great if there are full iOS-example.

    Looking forward to your reply. Btw, thank you for the great SDK!

    opened by ChurikiTenna 1
Owner
Alter
Avatar infrastructure for the open metaverse and web3.
Alter
Build a workout app from scratch using SwiftUI and HealthKit

Build a workout app for Apple Watch Build a workout app from scratch using SwiftUI and HealthKit during this code along. Learn how to support the Alwa

paigeshin 5 Nov 28, 2022
Da Xue Zhang Platform Lvb iOS SDK

Cloud_Lvb_SDK iOS API Reference Dxz Meeting iOS SDK是为 iOS 平台用户音视频服务的开源 SDK。通过大学长开放平台自研RTC,RTM系统,为客户提供质量可靠的音视频服务。 类 类名 描述 CLS_PlatformManager SDK的音视频主要

null 8 Jan 10, 2022
Visual Positioning System SDK iOS

VPS SDK (iOS) This is Visual Positioning System SDK for Native iOS apps. Main features are: High-precision global user position localization for your

SberDevices 6 Nov 15, 2022
Open-source API Client for iOS, iPadOS, macOS. Built with SwiftUI

Yogu Open-source API Client for iOS, iPadOS, macOS. Built with SwiftUI ?? Yogu is currently in development, and not actually usable yet. Please DO NOT

Beomjun Gil 5 Oct 29, 2022
PayByBank SDK is an alternative and easier form of Open Banking solutions.

PayByBank SDK (iOS) The Ecospend Gateway presents PayByBank SDK as an alternative and easier form of Open Banking Instant Payment solutions. PayByBank

Ecospend Technologies Limited 8 Oct 10, 2022
Federal Data SDK built in the Swift programming language. Follow the link for the documentation:

Swift-Federal-Data-SDK Federal Data SDK built in the Swift programming language Until the Swift language becomes more stable, consider this a beta rel

null 65 May 28, 2022
Px-mobile-sdk-demo-app - PerimeterX Mobile SDK - Demo App

About PerimeterX PerimeterX is the leading provider of application security solu

PerimeterX 1 Nov 20, 2022
A platform where NYUAD students can both Help and Seek Help.

A platform where NYUAD students can both Help and Seek Help.

Omar Rayyan 0 Nov 7, 2021
Used to integrate the Facebook Platform with your iOS & tvOS apps.

Facebook SDK for iOS This open-source library allows you to integrate Facebook into your iOS app. Learn more about the provided samples, documentation

Meta 7.3k Jan 3, 2023
CareKit is an open source software framework for creating apps that help people better understand and manage their health.

CareKit CareKit™ is an open source software framework for creating apps that help people better understand and manage their health. The framework prov

CareKit 2.3k Dec 27, 2022