Introduction
Welcome to 3dverse, the cloud-native real-time 3D operating system. 3dverse is driving a fundamental shift, not just building technology.
This page outlines why and how we’re creating a new development model for real-time 3D.
Why 3dverse?
Our team has spent years experiencing the challenges of working with real-time 3D in industries such as video gaming, medical imaging, industrial manufacturing, and AEC (Architecture, Engineering and Construction). In all of these industries, we’ve encountered the same recurring problems:
Fragmented & Inefficient Workflows:
- Legacy Systems: Traditional 3D development relies on monolithic, centralized infrastructures, hindering flexibility and scalability.
- Hardware Dependency: Teams are burdened by the need for specialized, high-powered hardware for all collaborators.
- Version Control Bottlenecks: Manual asset synchronization and version conflicts stifle collaboration and slow development.
- Complex Deployment: Managing and deploying 3D applications across diverse environments consumes significant resources.
- Result: These inefficiencies lead to protracted development cycles and inflated costs.
Collaborators needs a) powerful & specific hardware, b) a replica of the 3D assets on their local machine
Cumbersome Application Delivery & Web Deployment:
- Device-Specific Builds: Each target device necessitates a unique build and packaging process, adding complexity and time.
- Resource-Intensive Deployment: Deploying and managing 3D applications across multiple platforms drains resources.
- Hardware Variability: End-user experiences are inconsistent due to varying hardware capabilities.
- Web Delivery Complexity: Delivering seamless real-time 3D experiences on the web requires intricate infrastructure and technical expertise.
Delivery model for applications built with traditional 3D engine
Our solution
To solve these issues, we’ve built our own cloud-based rendering engine, streaming frames in real-time to any web browser, and integrated it with a powerful asset management system.
This means:
- 3D assets are uploaded to the cloud, either via a web browser or an API.
- 3D assets are edited with web-based editors.
- 3D scenes can be integrated into any web app.
- all engine and asset management functionalities are exposed through APIs and JavaScript libraries.
Whether developing or using the 3D application, you’re always working on the latest version. The web becomes the universal entry point for developing and delivering 3D applications.
Multiple users are connected to the same instance of the rendering engine, running on cloud infrastructure
How does it work?
When you visit a web page integrated to a 3dverse 3D scene, the following happens:
- The website loads a JavaScript library (Livelink.js SDK), which sends a request to spin up an instance of our rendering engine on a cloud provider near your location.
- The website uses a JavaScript library (Livelink.js SDK) to open a WebSocket connection with the rendering engine and receives streamed content that is displayed on an HTML Canvas.
- The Livelink.js SDK keeps track of the state of the scene on the server and sends or receives events to update the scene in real-time.
The period when the cloud rendering engine runs is called a rendering session. Multiple users can connect to the same rendering session and will experience the scene in real-time.
The Livelink.js SDK handles video streaming, and can communicate both ways with the server
If all connected users close their browsers, the WebSocket connections are also closed, and the rendering session ends, freeing up computing resources.
Setting up and editing 3D scenes happens directly in the browser- using our web-based editors.
Building a custom application only requires an HTML page and a few lines of JavaScript. Your web UI can interact in real-time with the cloud-rendered scene using the Livelink.js SDK.
How to work with 3dverse?
The 3dverse Toolbox consists of:
- 3dverse Console: This is the entry point for 3dverse developers to interact with the platform. It contains:
- Asset Browser: Similar to a filesystem explorer, it lets you browse, manage and upload 3D assets.
- Asset Editors: Assets can then be opened in web-based asset editors (the editor will depend on the asset type). The Scene Editor lets you customize a 3dverse scene with a look and feel comparable to traditional 3D desktop engines. Materials, Shaders, Animation Graph, Animation Sequence assets each have their own web-based editors.
- Monitoring dashboards: Dashboards to monitor usage, performance and know in real-time who is accessing your 3D scenes.
- Livelink.js SDK: the JavaScript library to integrate in your web application. It streams the content to a HTML Canvas and it allows you to send commands to the rendering engine.
- Asset API: A REST API to manage assets outside a rendering session. It can replicate most functionalities of the Asset Browser (like uploading or managing 3D assets).
When building a 3dverse app, you can use the Scene Editor to easily edit your scene but all your business (or game) logic will be handled in your web app.
As a matter of fact, any action which can be done in the Scene Editor, can also be done with the Livelink.js SDK.
Recommended developer skills to use 3dverse
- Experience with front-end web development (JavaScript or Typescript). We are framework agnostic, but our demo samples are in React
- Good understanding of client/server architecture and Websockets is preferable.
- Basic knowledge of 3D concepts is preferable (transforms, textures, materials, etc.)
- Experience with ThreeJS or a 3D engine (eg: Unity) is nice to have but not required.
Benefits of working with 3dverse
3dverse offers a new development paradigm for real-time 3D. Compared to traditional engines, it offers a few obvious benefit:
- Device agnostic: You’re no longer limited by end-user hardware requirements.
- Real-time collaboration: Always work on the latest version.
- Easy delivery: Integrate in any web app. Don’t worry about scaling.
- Performance & security: Render large 3D assets without sending them over the network.
These key characteristics make 3dverse shine for projects that are web-centric and collaborative; projects where 3D assets are large or confidential; projects that need to reach a large audience with a variety of devices.
We believe we’re onto something special which will shape the direction of the 3D industry as a whole. We hope you’ll enjoy the ride with us.