Post on 01-Jan-2016
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
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
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
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
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
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
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
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
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
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
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
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
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]
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
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
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
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
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
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
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
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)
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
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)
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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