SceneHash: A Content-Indexable Data Structure for Collaborative 3D Environments

Anno
2020
Proponente Fabio Pellacini - Professore Ordinario
Sottosettore ERC del proponente del progetto
PE6_8
Componenti gruppo di ricerca
Componente Categoria
Luigi Cinque Componenti strutturati del gruppo di ricerca
Andrea Sterbini Componenti strutturati del gruppo di ricerca
Maria De Marsico Componenti strutturati del gruppo di ricerca
Abstract

Real-time collaboration has become ubiquitous. Google Docs, Dropbox Paper, Microsoft Live Share are example of these systems used by millions of people worldwide. In this dire times, we have relied on collaborative tools to use us working remotely and safely. At this time though, many 3D design applications do not have collaborative features.

All Computer Graphics applications need to represent complex 3D scenes that model the cameras, shapes, materials, lights and layouts of real-world environments. The two most popular data structures used to encode this data are scene graphs and node networks. The former encodes scene data as direct acyclic graphs, where node properties can be inherited in the hierarchy. The latter are forms of data flow graphs that describe scenes procedurally. These scene representations have served the graphics community well over the years. But, as we will discuss in the project description, collaborative editors cannot be built directly on scene graphs or node networks.

Inspired by Git, we propose to investigate SceneHash, a content-indexable data structure for 3D scenes. In scene hash, all scene elements, from large objects to shape vertices, are referred to by their content hashes. Scene data structures can be built using these hashes in leu of explicit references. Since in this representation, a local edit changes the identity of the containing object, tracking changes in large data structures becomes easy. This in turns means that scenes can be concurrently edited at their finest granularity, while ensuring that the scene data structures remain well-formed after each edit.

We will use this data structure to (1) build a prototype 3D collaborative editor where scenes can be seamlessly edited, (2) speed up typical graphics editors that use concurrent processes to provide an editing-while-rendering workflow (3) seamlessly provide a scalable and robust caching system for large data flow graphs used in procedural modeling and shading.

ERC
PE6_8
Keywords:
COMPUTER GRAPHICS, INFORMATICA E SISTEMI INFORMATIVI, INTERFACCE E INTERAZIONE UOMO-MACCHINA, COMPUTER VISION

© Università degli Studi di Roma "La Sapienza" - Piazzale Aldo Moro 5, 00185 Roma