Development of an innovative 3D content web-based platform - QC-666

Project type: Innovation
Desired discipline(s): Engineering - computer / electrical, Engineering, Computer science, Mathematical Sciences
Company: 3dverse Technologie
Project Length: Flexible
Preferred start date: 01/15/2023
Language requirement: Flexible
Location(s): Montreal, QC, Canada; Canada; Canada
No. of positions: 1
Desired education level: Master'sPhDPostdoctoral fellow
Open to applicants registered at an institution outside of Canada: No

About the company: 

At 3dverse, we believe that unlocking the potential of real-time 3D is the key to advancing innovation. That's why our team is building the first true real-time 3d rendering platform as a service.

We know this transformative technology will impact and change the way people view, interact, and create with 3D. We're looking for people to join the adventure.

The demand for increasingly immersive and accessible experiences is growing exponentially. It’s no surprise that the wide adoption of 3D experiences and technologies will be an economic and societal game changer. Right now, 3D technology is restricted to those with the technical know-how using advanced computing systems to run 3D development platforms. The essential pillars of 3D development—Real-time experiences and collaboration— aren’t available at scale.

Our platform provides a 3D engine as-a-service, enabling developers to seamlessly build 3D experiences, instantly accessible by all users on any device, at any time.

3dverse removes the barriers to access for 3D content manufacturing and distribution using cloud-computing technologies and accessible high-speed networks.

Describe the project.: 

Your main objective will be to improve and implement technological solutions to develop a 3dverse web-based 3D engine.

You will work on one or several topics as :

1. Optimize Video Streaming within an innovative web-based 3D engine.

You will optimize real-time video streaming of the 3dverse solution by :

  • From a back-end point of view to implement a real-time encoder on the back-end using existing standard encoders such as H264, H265, V1, etc.
  • From a front-end point of view to guarantee efficient web browser side decoding.
  • Explore WebRTC programming interface.

2. Elaborate and complete standardization of a microservice environment for a 3d content web-based platform.

You will implement a microservice architecture standardization API to provide end-user scalable, accessible, and consistent solutions. To reach this ambitious objective, your mission will be to merge content and code into a unified workflow. As the chosen candidate, your mission will be:

  • To use available open-source tools to create a documentation toolchain.
  • To create the rules and standards enforcing such a documentation toolchain.
  • To edit and review technical documentation and rules to make it match the specification and standards.
  • To extend recommendations and foundation rules.
  • To write technical documentation and implement it.
  • To develop CLI tools, create definition files, and integrate this with existing API.
  • To work on OPENapi 3.0 and YAML programming languages.

3. Develop DCC tool connectors.

Your main mission is to develop connectors between the 3dverse platform and Digital Content Creation (DCC) tools in the 3D domain. DCC tool connectors are concerning solution as Sketchup, REVIT, Blender, Maya, 3D Studio Max, and other major 3D software used in video game, construction, and engineering industries.

4. Implement Soft Body Dynamics.

You will improve web-based 3D engine technologies by developing soft body dynamics. Especially, we are looking to implement various physic principles to improve our real-time 3D rendering technologies. To do so, you will focus on integrating Simulation Open Framework Architecture (SOFA https://www.sofa-framework.org/).

5. Develop and integrate Point Cloud and Photogrammetry conversion to Mesh.

You will develop 3D datasets to Mesh to improve our web-based rendering technologies. Especially, our mission will be to implement solutions and reach efficient programming to transform :

  • Point Cloud dataset to Mesh
  • Photogrammetry to Mesh

6. Implement a Cloth simulator.

You will improve web-based 3D engine technologies by developing a cloth simulator. Especially, our mission will be to develop a simulator and implement the NVcloth library to improve our platform. More information about NVcloth on https://github.com/NVIDIAGameWorks/NvCloth.

7. Implement Recast & Detour.

You will improve web-based 3D engine technologies by implementing Recast & Detour tools. Your mission will be to integrate into our 3dverse platform :

  • Recast: a navigation mesh construction toolset
  • Detour: a path-finding and spatial reasoning toolkit

More information about Recast & Detour on https://github.com/recastnavigation/recastnavigation

Projects are inline in company growth and include a long terms roadmap for the company. You will be learning to work in team squads in a tech environment. Potential employment can be discussed at the end of the program.

Required expertise/skills: 

Candidate must have:

  • Mission intervenes in software sciences, 3D engines, and rendering.
  • Experience with C or C++
  • Have a basic understanding of programming and testing in general.
  • Understand computer graphics principles.

For specific mission presented and regarding your interest :

  • Know video encoding
  • Know NodeJS and OPENipa
  • Be familiar with markdown, working in repositories, and versioning draw
  • Be comfortable in writing and describing complex concepts

As a plus, the candidate could have :

  • Have a strong interest in 3D and/or video games.
  • Enjoy working with technical materials and products.
  • Possess a technical and structured mindset.
  • Have used profiling tools to optimize code.
  • Experience in Vulkan and JavaScript is a plus.
  • Be comfortable working with a big code base in a production environment.
  • Have strong redactional competencies. (for one specific task).
  • Have a Web RTC experience (for one specific task).