Skip to content

Direct upload from Unity SDK #13

@Frooxius

Description

@Frooxius

Currently the Unity SDK requires a running instance of Resonite to connect to. It syncs all the changes to this instance. This has benefit of the user being able to immediately verify and visualize the results of the conversion.

However there might be a number of cases where this adds overhead and complexity for some users. It also makes automation more difficult.

To address this, we can introduce another mode, which will download/bundle the Resonite engine and run a specific version of headless in the background. This instance will be used to transfer the data and sync it to user's inventory/account.

Workflow

  • The user provides their login credentials in the Unity SDK
  • They fill out name of item and other metadata and pick inventory location
  • They click button to upload scene/object to their account
  • The SDK runs the instance in the background, connects to it, converts scene
  • The SDK instructs the instance to upload the converted scene - sync progress is displayed to user

Prerequisites

There's a number of things that will likely need to be in place before we can implement this mode:

  • Molecule
    • This will allow the SDK to download special version of headless depending on its version
    • We could potentially just bundle one with the SDK, but this will bloat the install size and will be harder to update
  • Headless control API
    • We'll need to introduce API for FrooxEngine to be controlled from other applications to spin up sessions, open ResoniteLink, login to user account, initiate syncing and so on
    • This API would likely be shared with the actual headless and graphical client, but some functionality will be lacking in specific versions
    • It would likely be WebSocket + JSON as well, following the ResoniteLink API

Metadata

Metadata

Assignees

Labels

Workflow / UIAdding/improving UI and workflow of the Unity SDK

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions