Project Shark

Create and share dynamically configurable 3d models at 1:1 scale in AR

TAGS:

XR, AR, PARAMETRIC MODELLING

Communication of 3D models in real-time requires really streamlined data transfer protocols. Project enables this collaboration for 3D models for Designers, Architects, Developers and other professionals and that too without a single line of code.

lasa-cover image

Year

2019-2020

Team

Praneet Mathur

Languages

C#, JavaScript (Node.js)

Platforms

Windows (Grasshopper3D), Android (Unity3D)



What is it about?

The level of detail in 3D models for architectural projects or Extended Reality can not be conveyed faithfully through 2D screens. That’s where Augmented reality comes into play. But in order to get rapid customer feedback these models need to be easily adjustable and transmittable in real time.

Project Shark is a grasshopper plugin that allows users to do exactly that and that too without any line of code!

About image

The Challenge

Project Shark allows designers and architects to leverage XR as a powerful design tool to visualise and test different geometries in real-time AR. However to achieve this, we had to resolve a few big challenges:

1. How do we transmit the extensive data for intricate 3D geometries in real time?

2. How do we overcome the lack of existing solutions for streaming geometry data over a network directly?

The lack of efficient existing solutions, led us to develop custom algorithms that radically change how AR data can be transmitted and visualised. The amazing part is that it was achieved only by a 3-man team within X hours and zero budget (well almost)!

Real-Time, AR-enabled
Spatial communication

The Solution

We started solving the challenge by developing an efficient algorithm to compress and stream geometry data in real time. We had to put many technical solutions together to complete this puzzle:

01

For the project development, Unity3D with the Vuforia package was found to be the most accessible and reliable way to create AR applications.

02

For intelligent mesh serialisation and compression, we chose to convert all mesh data (vertices, faces and UVs) and it’s parameters into a proprietary format before serialising it using MessagePack.

03

Some data was simply stored as a serialised JSON string, in order to ensure the possibility of future feature addition without worrying about backwards compatibility.

04

The server for Project Shark was written in JavaScript with Node.js and hosted on Heroku.

Render of Lasa

Use cases

So what can you use applications like project shark for? The possibility of use cases is unlimited but here we provide a few use cases to stimulate your imagination!

01

For Architects, Interior Designers → To showcase 3D models to clients and get real time feedback. To collaborate with fellow colleagues and iterate on the current designs.

02

For Engineers, Product designers → To communicate about the product design with customers and with each other virtually, without expensive experimentation.

And many many many more!

Project Shark is still looking for improvement. We are going to add compatibility with more modelling applications like SketchUp, Revit and Blender, followed by a wide range of client apps - VR, Web and even MR. If you would like to contribute to it’s development, write to us!

Explore more