model directly within the city model, which allows
him to adjust his model to the surrounding buildings
at the time he creates it. If he needs to change some
of the surrounding buildings to fit in his model cor-
rectly, he can do so immediately in his own scene and
does not have to search for and to open the reference
file which contains the buildings he wants to change.
Therefore he will also not run into the problem that
a specific reference file might already be in use by
someone else and is not available for him to work on.
Detection and resolution of conflicting changes by
the repository system during the check-in of scenes
keeps the city model in a clean state. In addition, the
detection and inspection of indirect conflicts helps to
keep the city model consistent. If two modelers have
accidentally decorated the same building this would
result in an indirect conflict in the affected building.
During a check-in or an update this indirect conflict
would be brought to the modelers’ attention and the
problem could be fixed.
7 CONCLUSIONS
Today’s professional 3D digital content creation tools
only offer limited support for several artists to work
collaboratively on a 3D scene, and also standard
group authoring tools are only of limited assistance,
because they are not able to merge collaborative
changes made to 3D scenes. To make the merging
of 3D scenes possible we have presented an attributed
scene graph model that is general enough to handle
scene graphs of different DCC tools.
We have also presented a scene graph reposi-
tory system that enables fine-grained collaboration on
scenes of standard 3D DCC tools by implementing
the concept of collaborative versions. Artists can now
work on the same scene in parallel without locking
out each other. The artists’ changes to a scene are reg-
ularly merged to make sure that all artists can see each
other’s progress and can collaborate on current data.
We have reduced the merging of scenes to the merg-
ing of state-based change sets and have shown how to
detect and resolve conflicts between such change sets
using different conflict resolution policies.
We have also introduced the concept of indirect
changes and indirect conflicts which help maintain-
ing scene consistency by systematically looking for
inconsistencies at the right places. Computing indi-
rect conflicts is based on our attributed scene graph
model’s capability to depict detailed dependencies be-
tween nodes.
Our approach has been implemented in a proto-
type scene graph repository server in Java and a Maya
ASG plug-in in C++. We have successfully tested our
prototype implementation by applying it to our model
of the old part of the city of Bern. Merging different
versions of a city model Maya scene, which is about
50 MB in size, by applying an automatic conflict res-
olution policy takes less than 15 seconds on a today’s
standard PC.
REFERENCES
Alienbrain (2005). Alienbrain studio 7. http://www.
alienbrain.com.
Barnes, M. (2005). Collada, digital asset schema release
1.3.0, specification. http://www.collada.org.
Cob
´
ena, G., Abiteboul, S., and Marian, A. (2002). Detect-
ing changes in XML documents. In Proceedings of
the 18th International Conference on Data Engineer-
ing (ICDE’02), pages 41–52. IEEE.
Collison, A. and Bieri, H. (2000). A component-based sys-
tem for storing and manipulating graphics objects of
different representations. In The Visual Computer,
volume 16(6), pages 322–338. Springer.
Galli, R. and Luo, Y. (2000). Mu3d: a causal consistency
protocol for a collaborative vrml editor. In VRML ’00:
Proceedings of the fifth symposium on virtual real-
ity modeling language (Web3D-VRML), pages 53–62,
New York, NY, USA. ACM Press.
Hesina, G., Schmalstieg, D., Fuhrmann, A. L., and Purgath-
ofer, W. (1999). Distributed open inventor: a practical
approach to distributed 3d graphics. In VRST, pages
74–81.
Kiesel, N., Sch
¨
urr, A., and Westfechtel, B. (1995). Gras,
a graph-oriented (software) engineering database sys-
tem. Information Systems, 20(1):21–51.
Magnusson, B., Asklund, U., and Min
¨
or, S. (1993). Fine-
grained revision control for collaborative software de-
velopment. In Proceedings of the first ACM sympo-
sium on Foundations of software engineering, pages
33–41. ACM Press.
Naef, M., Lamboray, E., Staadt, O., and Gross, M. (2003).
The blue-c distributed scene graph. In Proceedings of
the IPT/EGVE Workshop 2003, pages 125–133.
Wieczerzycki, W. and Rykowski, J. (1994). Version sup-
port for cad/case databases. In Proceedings East/West
Database Workshop, Workshops in Computing, pages
249–260.
Zaugg, M. (2005). Generische Geb
¨
audemodellierung in
Maya. Master Thesis, Institute of Computer Science
and Applied Mathematics, University of Bern.
Zeleznik, B., Holden, L., Capps, M., Abrams, H., and
Miller, T. (2000). Scene-graph-as-bus: Collaboration
between heterogeneous stand-alone 3-D graphical ap-
plications. In Computer Graphics Forum (Eurograph-
ics 2000), volume 19(3).
GRAPP 2006 - COMPUTER GRAPHICS THEORY AND APPLICATIONS
266