3d revision control framework
DESCRIPTION
3D Revision Control Framework. Jozef Dobo š & Anthony Steed Department of Computer Science University College London August 5, 2012. Introduction. 3D models grow in complexity Artists and engineers collaborate asynchronously File systems pose serious drawbacks. Contributions. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/1.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/2.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/3.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/4.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/5.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/6.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/7.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/8.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/9.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/10.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/11.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/12.jpg)
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 assets2. Delta changes stored alongside non-linear history3. Easy access control and sub-object retrieval4. Interactive 3D diff tool5. Web interface for repository inspection
![Page 13: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/13.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/14.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/15.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/16.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/17.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/18.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/19.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/20.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/21.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/22.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/23.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/24.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/25.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/26.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/27.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/28.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/29.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/30.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/31.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/32.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/33.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/34.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/35.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/36.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/37.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/38.jpg)
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: 3D Revision Control Framework](https://reader036.vdocuments.net/reader036/viewer/2022062315/56816169550346895dd0f598/html5/thumbnails/39.jpg)
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