From: John Stone (johns_at_ks.uiuc.edu)
Date: Mon Apr 02 2007 - 11:55:34 CDT

Michal,
  We don't have a license for the Win32 version of Cavelib.
The only test platform I currently have to work with is an
archaic SGI Onyx2 IR3 machine with 4 pipes.

I suspect that the reason you're losing sync is because the
individual VMD CAVE rendering slave processes were written to
use barrier synchronizations or reader/writer locks to sync up
with the master VMD threads. The code for this is in CaveScene.[Ch],
see the calls to vmd_thread_barrier(). The Win32 builds of VMD
don't currently implement the thread barriers, and so when they're
compiled VMD for CAVE on Win32, you're essentially getting a
no-op stub function. In order to get this to work correctly, you'll
need to make sure that the code is compiled with the macro CAVEUSERWLOCK
defined (it should be already in the source code anyway).
The CAVEUSERWLOCK tells VMD to make calls to CAVESetReadLock(),
CAVESetWriteLock() etc. You'll need to find out if these are
implemented in the Win32 versions of Cavelib or not. If not,
then you may have to implement a Win32 version of the VMD thread
barrier sync routines, or else come up with your own alternative.

Cheers,
  John Stone
  vmd_at_ks.uiuc.edu

On Mon, Apr 02, 2007 at 03:00:34PM +0200, Michal Husak wrote:
> We try to compile VMD fro WIN32 based PC CAVE enviroment ...
> Did anybody tryed this ?
> Our problem - everything works O.K. and is in sync at the startup ...
> We get object geometry de-sync on the individual PC later ...
> Some photos form preliminary testing on CRT are on this link:
> http://quadron.felk.cvut.cz/CAVE/
>

-- 
NIH Resource for Macromolecular Modeling and Bioinformatics
Beckman Institute for Advanced Science and Technology
University of Illinois, 405 N. Mathews Ave, Urbana, IL 61801
Email: johns_at_ks.uiuc.edu                 Phone: 217-244-3349
  WWW: http://www.ks.uiuc.edu/~johns/      Fax: 217-244-6078