[Uni-verse] Preliminary notes on Orange project

Ton Roosendaal ton at blender.org
Thu Jan 12 00:32:20 CET 2006


Hi all,

We're now a little over the half of the project schedule, and needless  
to say the work pressure and stress is reaching a high point! :)
Nevertheless, the product we're making is totally awesome!

In november we've done several verse tests in the studio, but in  
december this has halted due to the workload, but also the 3 weeks we  
had the TD not available in the studio. He's back now, and has been  
assigned to organize more testing and finish reporting.

Below you can read what he has sent me as preliminaryh notes. Detailed  
use cases of the tests will follow soon (end of week, early next week).  
This will result in a first report on on both Blender-Verse usability,  
and a review of Verse itself.

Next to that, last december Jiri has started working on a gimp-blender  
integration, which can become a real winner for us!

For the agenda I'd like to add how we're going to start the public  
verse server.

See you all tomorrow,

-Ton-

----------------------------------------------------

=Verse at Orange=

Preliminary notes.

Toni Alatalo
Technical Director
Studio Orange

==Introduction==

Verse is a protocol that specifies various data types needed in 3d  
computer
graphics production, such as geometry and textures, and the  
transferring of
the data over a network. It features a client-server model where data is
published and subscribed to.

At Orange we are making a 3d animation short using mainly Blender. All  
data is
stored in Subversion, meaning we have a repository server and working  
copies
of the full project on every workstation. The data is almost
exclusively .blend files and textures as image files.

In principle Verse could be helpful for us in many ways:

- providing a central data repository:
  * not everyone needs to store all the data all the time
  * would update live: no manual update & commit cycle needed

- enabling live collaboration:
  * scene setup
  * texturing

- cross-application interoperability
- pipelining data processing tools

However, there are certain problems with the current tools that prevent  
us
from these usages at the moment.

Based on the testing done at the studio, the basic robustness of the  
Verse
technology seemed acceptable: several VerseBlender clients were able to  
edit
the same geometry at the same time. That use case has proven to be not  
useful
for us  however, so lets next discuss the roadblocks on the way to more  
useful
cases that have been identified.

==Roadblocks==

The beauty of Verse would be in having all the data on a Verse server,  
so that
any tool with support for the protocol could be used to work on that.  
For
example, as Eskil Steenberg demonstrated at the Blender Conference, when
having the data in Verse the toolkit for a project can be extended by  
writing
special task-specific tools for e.g. cleaning up models or whatever the
workflow may require.

The major roadblock preventing such usage with Blender is the  
incompleteness
of the Verse implementation (and support for Verse in Blender), which  
effectually
blocks us from using Verse as a database. Currenly only a solution that  
supports
saving everything from a Blender session, which is now only possible in  
the
internal binary blend format, can be used as our central storage.

Accepting limited functionality, we have so far identified two  
potentially
useful usecases for Verse at Orange: scene setup, and texturing. Of  
these the
case for texturing is better understood and tested, and refers to the  
simple
case where an image processing application such as GIMP us used to e.g.  
paint
a texture image, with Blender open for the full material setup, having  
the
image update live. The predicted usefulness of this case has been  
reported by
us to VerseBlender developers already some months ago, and there is  
still a
chance that with texturing support added to VerseBlender we will add it  
to
our toolkit here soon.

==Other area of usage: publishing==

Orange is an open movie project, and will eventually make all assets  
fully
public. Public Verse servers are an interesting possibility for this,  
and the
plan now is to now test that by publishin certain characters of the  
Elephants
Dream movie, that are used for secondary motion and have been so-far
otherwise ultra secret (not mentioned in any blog posts or anywhere,  
AFAIK).
We will first just put the meshes, perhaps moving the objects around  
with
special verse scripts made for the purpose, so the lack of animation  
features
such as armatures and actions is not a showstopping problem for this  
certain
set of data.

==Future ideas==

...

At least from our point of view, co-operation of Verse with version  
control
systems like Subversion (which is basically like CVS) is a central  
issue. One
idea for dealing with the two systems would be having a blender-using
subversion tool, that monitors changes in the repository and reflects  
them on
the Verse side -- this could be implemented e.g. as a python script  
that is
run within Blender on a server, using the Subversion python bindings to  
work
with the repository, and then either direct PyVerse tools or perhaps  
future
BlenderPython Verse API calls to publish via Blender the data updated  
in SVN.
But this may well not target the actual issues with the data.

Regarding even tighter cross-application interoperability, one idea  
that the
texturing use case brought up here was the possibility to have  
mouseclicks on
the textured 3d models in Blender to be communicated to the  
texture-editing
Gimp verse client, so that gimp-backended painting could be made  
directly in
the Blender views. In my understanding, the Verse specification does not
cover such usage: it is for data exchange, not for commands. But  
perhaps it
could still be done, either by extending the spec or using some existing
feature there that I may be unaware of. The usefulness of this idea is  
still
unclear.

Toni Alatalo.

------------------------------------------------------------------------ 
--
Ton Roosendaal  Blender Foundation ton at blender.org  
http://www.blender.org



More information about the Uni-verse mailing list