Anno: 
2018
Nome e qualifica del proponente del progetto: 
sb_p_1159607
Abstract: 

This project aims to propose a solution for supporting version control of 3D assets on scenes with 10 billion polygons and hundreds of gygabyte in size, containing geometric meshes, image and volume textures, keyframed animation and whole scene layout data. This is still an open problem that blocks any form of efficient collaboration between designers. There are three main issues that we are addressing. In the remainder, we use Git as an example of a standard version control application that is in wide use, but all others would fail in the same manner.

First, for Git the granularity of the diff is an entire line of text. If we call Git on binary data, for example to diff two binary versions of mesh primitives, Git will not be able to find the specific differences since the binary encoding is opaque. This means that even if a single mesh vertex has been changed, the entire mesh may be flagged as changed. With scene in the order of 100Gb each, this simply makes version control impractical.

Along with that, visualizing differences between versions is crucial on large models. Consider for example two engineers working on an airplane model. Without visualizing changes precisely, the collaboration between the designers is hindered.

Finally, no current method allows merging versions of 3D assets, even when no conflicts have occurred. This, in turn, means that designer can only work in turn on 3D data, entirely different than the seamless collaboration of Google Docs.

The key insight or our work is to model graphics assets with respect to different data domains. For each domain separate diff and merge algorithms are investigated. We will propose an approximate algorithm that scale on real models, since we already showed that the correct algorithms for diffing meshes are NP-hard since they are equivalent to the maximum common subgraph-isomorphism problem. A similar proof exists also for whole-scene data structure which is NP-hard in the common cases used in graphics.

ERC: 
PE6_8
PE6_3
PE6_9
Innovatività: 

This research project aims to resolve an existing problem, which in common literature has been explored only for data dimension unsuitable for nowadays needs in 3D industry. The reference model must be no more the single mesh, but an entire virtual world. A proper system approach for version control large-scale 3D data has not been proposed yet. In particular, the major points of innovation with respect to common literature are three:

The first one is the proposal for new diff and merge algorithms based on new heuristics suitable for processing large-scale geometry.

The second point is defining a scene model which allow to easily extend diffing and merge not only on geometry primitives, but on every 3D assets a designer might want to use. The system will allow to version control not only meshes, but entire 3D scenes along with all the asset it could be made of (materials, animations, textures, meshes).

The third point derives from the fact nobody yet explored version controlling on entire 3D world. Considering the human interaction with a 3D scene version control we propose a way for visualizing diffs. As in git there is a yet well know strategy for visualizing differences in text, our system will propose a novel strategy for visualizing differences in versioned 3D sc

Codice Bando: 
1159607

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