edit this text to create a heading this subtitle is 20 points bullets are blue they have 110%...

39
Edit this text to create a Heading This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this 3D Revision Control Framework Jozef Doboš & Anthony Steed Department of Computer Science University College London August 5, 2012

Upload: mary-smith

Post on 01-Jan-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

3D Revision Control FrameworkJozef Doboš & Anthony Steed

Department of Computer ScienceUniversity College London

August 5, 2012

Page 2: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Introduction

3D models grow in complexity

Artists and engineers collaborate asynchronously

File systems poseserious drawbacks

Page 3: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Contributions

How to maintain distributed open repository for revising 3D models

How scene graph of 3D assets can be stored in NoSQL DB (MongoDB)

How to extend the DB to store revision history Tier 1: A stand-alone GUI with conflict detection and

resolution Tier 2: A secondary read-only GUI via WebGL and Java

Page 4: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Previous Work

Asset management and version control High-end CAD modeling packages:

Bentley Assetvise

Dassault Catia

Software engineering: SVN, Git, Perforce...

3ds Max, Blender... + filesystems

Locking

Page 5: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Previous Work

Edit logging Nonlinear Revision Control for Images [Chen et al. 2011]

MeshFlow: Interactive Visualization of Mesh Construction Sequences [Denning et al. 2011]

VisTrails Provenance Explorer for Maya

Network distribution XML3D – Interactive 3D Graphics for the Web [Sons et al. 2010]

A scalable architecture for the HTML5/X3D integration model X3DOM [Behr et al. 2010]

SceneJS

Page 6: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Aim

Support non-linear concurrent modeling Become agnostic to any specific modeling software Make one DB store the scene and its revision history

Hence separate modeling from its long-term storage

Page 7: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Framework Overview

Page 8: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Framework Overview

3rd party modeling software saves 3D scene locally

Page 9: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Framework Overview

Tier 1 GUI imports/exports various 3D file formats Visualizes revisions and differences Saves scene components in remote 3D repository

Page 10: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Framework Overview

Domain specific database Tracks revision history on individual scene nodes Supports sub-scene retrieval

Page 11: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Framework Overview

Tier 2 GUI (subset of Tier 1 functionality) Inspects repository, retrieves and visualizes revisions Does not modify the models nor their history

Page 12: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Framework Features

1. Support for wide range of assets

2. Delta changes stored alongside non-linear history

3. Easy access control and sub-object retrieval

4. Interactive 3D diff tool

5. Web interface for repository inspection

Page 13: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

3D Repository (DB)

Scene Graph (SG) Directed Acyclic Graph SG Node: scene

component (binary blob) Metadata = (ID, R#) Used by:

[Zeleznik et al. 2000]

[Berthelot et al. 2011]

Revision History (RH) Directed Acyclic Graph RH Node: revision

Used by: Git, SVN, Mercurial, ...

[Chen et al. 2011]

Page 14: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Revision History

Rev 0

Branch

Trunk

Rev 8

Page 15: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Revision Management

Revision Retrieval Return all the newest SG nodes for a given revision number

Revision Commit Delta changes as new revisions

Potential conflicts → need conflict resolution

Node deletion Store NULL in the next revision

Recursively check children

Page 16: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

3D Diff and Merge

Page 17: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

3D Diff and Merge

Find corresponding nodes in A, B based on ID Binary compare for differences

Page 18: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

3D Diff and Merge

Identical nodes → no modification

Page 19: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

3D Diff and Merge

Discrepancies in nodes → conflict Select A or B or export into 3rd party editor

Page 20: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

3D Diff and Merge

Given AncestorAB more states can be detected

Page 21: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

3D Diff and Merge

Identical nodes → no modification (as before)

Page 22: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

3D Diff and Merge

Some conflicts can now be automatically resolved

Page 23: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Prototype Implementation

MongoDB NoSQL (schemaless) Geospatial indexing Data as Binary JSON (BSON) – little-endian serialized

C types UUID as node identifiers Two collections (one for each DAG – SG and RH)

Page 24: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

DAG as Flat Collection

is a parent-child relationship V is a logical disjunction

Page 25: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Tier 1 - 3D Revision Control Viewer

Written in C++ and Qt Open Asset Import Library (Assimp) to handle models Converts unified scene graph into collection of BSON Handles all version control logic Performs visual 3D diff Exports to common file formats

Page 26: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Tier 1 - 3D Revision Control Viewer

Page 27: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

3D Diff Tool

Page 28: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Tier 2 - 3D Web Client

Driven by JavaScript MongoDB Java driver loads BSON from DB WebGL renderer displays in web browsers

Page 29: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Tier 2 - 3D Web Client

Page 30: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Discussion

Interaction via import/export of 3D files Files now considered only temporary representation Smallest unit of change is SG node (BSON document) Each SG node can be 16MB max (automated multiple

documents workaround) Assume the 3D file to preserve metadata Lack of data validation on insertion

Page 31: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Future Work

Android and Java Webstart Tier 2 viewers Store other types of data Locking and hybrid locks with geometric constrains Search via spatial queries Integrate into existing industrial pipelines

Open crowd-sourcing of 3D models

Page 32: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Future Work

Possible direct connection from editing software Hides the revision control layer from the user

Page 33: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Conclusions

Novel approach to storage and revision control of 3D assets

Represented hierarchical scene graphs in DB Preserved associated revision history Successfully decoupled modeling from long term

storage

Page 34: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Sponsors

Arup Foresight

http://driversofchange.com

UK Engineering and Physical Sciences Research Council

http://www.epsrc.ac.uk

UCL Engineering Doctorate Centre in Virtual Environments, Imaging & Visualisation

http://engdveiv.cs.ucl.ac.uk

Page 35: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

http://3DRepo.org

Page 36: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Talk Invitation

3D Diff: An Interactive Approach to Mesh Differencing and Conflict Resolution Session: Model Stories

Date: Tuesday, 7 August

Time: 2:00PM – 3:30PM

Location: Room 406AB

http://3drepo.org

Page 37: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Google Chrome

Page 38: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

Materials

Page 39: Edit this text to create a Heading  This subtitle is 20 points  Bullets are blue  They have 110% line spacing, 2 points before & after  Longer bullets

Edit this text to create a Heading

This subtitle is 20 points Bullets are blue They have 110% line spacing, 2 points before & after Longer bullets in the form of a paragraph are harder to

read if there is insufficient line spacing. This is the maximum recommended number of lines per slide (seven). Sub bullets look like this

King’s Cross