Updates from CCC version 2 to 3.1

 

This page covers the updates, fixes and additions to the ccc application in version 3.1.

 

1. Additions:

 

There are 5 new additions to the console:

 

1.      A new entry in the Models Menu, called "Models are Solid", checked by default. If unchecked, the avatar will go through walls (but it will still climb stairs or objects) and objects will intercept freely.

 

2.      The possibility of adding preset models to the Models menu.  This allows you to be able to load preset models just by selecting from the menu.  To use this then create a models.menu file in the ccc31 directory with the following form:

      name of the model = file path to the model

      name of another model = file path to the other model

      ...and so on

for example:

      Coffee Cup = /usr/local/models/coffee.iv

      A door = /home/user/door.pfb

If the models.menu file is not empty and the format is correct, it will add an entry in the Models menu for every correct line in the models.menu file.

 

3.      Share View:  Now you may see through the eyes of another user for as long as you wish by invoking the share view menu option and typing in the name of the user (or voice input "computer share Einstein's view please").  To get back to your own view select "return to my own view" (or voice input "computer ownview please").

 

4.      Now there is an explicit "Exit from CCC" menu entry at the end of the Participants Menu (the first from the left).

 

5.      Model Intersection checking:  Now when you manipulate a model, there will be a rudimentary object collision checking, so that an object does not get inside the other unless there is a hole. This checking is simple and will fail in different degrees depending on the shape of the models, but at some point it will detect the intersection and will stop the movement of the model in the direction that provokes the collision.

 

2.      Enhancements and Fixes to version 2:

 

1.      All executable programs are now in n32 format (they were in the old o32 format before).

 

2.      Many memory bug fixes.

 

3.      Illumination of models changed to uniform lighting. Now the world will look a little darker, but the color of all models will be much closer to the color you gave the models when you designed them.

 

4.      Now it is possible to load a model from anywhere on the hard disk.  Before it was only possible to load models in the directory where CCC is installed.

4.1 Limitation:  There is a limitation for model distribution.  CCC will only distribute correctly models that are made of a SINGLE file. That is, if the model file refers to external texture files, CCC will distribute the model BUT NOT the textures. In that case you will see the model correctly with all the textures, but the other sites will not get the textures and will see the model without them.

4.2 Workaround to the limitation: Pack the model and the textures into a single .pfb file, and load that file. To do this, type

            pfconv -M pfb,1,1 <source_model> <final_name.pfb>

For example:

            pfconv -M pfb,1,1 coffeeCup.iv coffeeCup.pfb

Note that a file in .pfb (Performer Binary) format does not necessarily mean that it contains the textures too. The only way to be sure is to use pfconv as above with the .pfb file as source.  After packing the model and the textures together, you can load the file in a collaborative session and all the remote sites will receive the model correctly.

 

5.      Every time you select a model, the name of the model is shown in the upper left corner of the front wall. If you load the same model multiple times, the models will be named with a number at the end of the model name. For example, if you load coffee_cup.iv three times, the first will be called "coffee cup", the second "coffee cup 2" and the third "coffee cup 3". This name will be the same for all remote users too, so you can refer to the models by name and the other people will know which model you are talking about. These are also the names you will use when you want to unload the models.

 

6.      It is possible to name a model. All the models in the models.menu file will be named as the name to the left of the corresponding equal sign. If a model does not have a name, then the name will be the file name without the extension, with a number possibly added as explained above. It is not possible yet to give a name to a file loaded with the "Load Model" option on the menu, but it is possible using voice input (see next point).

 

7.      For the voice interface, the model command has 2 forms.

      load <filename>, and

      load <filename> as <model name you want to give>

The first form behaves as before.  In the second case, the file will be loaded, and the name of that model in the CCC will be the one you gave after the word 'as'.

 

8.      Model loading and distribution improved. Now if you load a filename with an extension, then the CCC will try to load that filename first. If it fails to load, or if the filename does not have an extension, CCC will try to load filename.pfb, filename.iv, filename.flt and filename.obj in that order. The distribution of models to remote sites should be slightly faster as well.

 

9.      The position of entries in the participant list is now properly updated as users arrive and depart from the shared world.

 

10.  The rotation of other users is now correct (in version 2 and 3.0 other people's avatars were rotating opposite to the user's actual rotation). 

 

11.  The record and play function now record the rotation movements.  In versions 2 and 3.0 it would record opposite turns and head movements (due to a modification in the limbo code from the previous version used in cccv1 to the new limbo 0.5 code used in versions 2 and 3).

11.1 Limitation:  The playback speed will still vary according to the speed of the computer it is being played back on.  If time permits another version, then this will be corrected.

 


Greg Edwards
Virginia Tech
VT-CAVE
Created 12/18/99, Revised 12/18/99

http://www.sv.vt.edu/future/cave/software/ccc/updates.html


Back to the CCC Homepage