[vtkusers] Mesa/VTK problem on RedHat 7.2 (also with Mesa 4.0)

Dave Reed dreed at capital.edu
Sun Nov 18 08:39:26 EST 2001


> From: Prabhu Ramachandran <prabhu at aero.iitm.ernet.in>
> 
> >>>>> "DR" == Dave Reed <dreed at capital.edu> writes:
> 
>     DR> When I moved from RedHat 7.1 to RedHat 7.2, I started getting
>     DR> missing polygons in simple VTK examples (using vtk3.2). It was
>     DR> suggested that I try Mesa 4.0 so I did, but the same thing
>     DR> still happens. I also tried VTK 4.0, but the same thing still
>     DR> happens. I completely removed the libGL and libGLU files that
>     DR> came with RedHat 7.2, installed Mesa-4.0, compiled VTK 4.0 and
>     DR> it still happens.
> 
>     DR> http://capital2.capital.edu/faculty/dreed/medical1.jpg
> 
>     DR> shows an example - there are polygons missing just under the
>     DR> nose.
> 
>     DR> The same program works fine (no missing polygons) with
>     DR> NVidia's drivers with a TNT2 card. So either it's a bug in
>     DR> Mesa or some strange interaction between VTK and Mesa. I
>     DR> suspect it's a bug in Mesa, but I'm not certain.
> 
> Yes, I have the same problem with VTK and Mesa on debian machines.  It
> all works right with nVidia's OpenGL.  I reported it here:
> 
> http://public.kitware.com/pipermail/vtkusers/2001-September/007664.html
> 
> Ann Gentile replied saying that the problem was with display lists.
> Read the full thread for details.
> 
> I've tested it with the following:
> 
>      Mesa 3.1: Horrible behaviour -- basically entire actors would
>      simply disappear when I did something (rotated the view or
>      changed property of something), this made using VTK very painful.
> 
>      Mesa 3.4.2: Much better behaviour but still there would be sudden
>      disappearance of actors.
> 
> I have checked this with both VTK 3.2 and VTK 4.0 with the same
> problems.
> 
> As regards testing if it really is display lists - if you are using
> VTK 4.0, Ann's patch wont work.  You can try this instead: In
> Rendering/vtkOpenGLPolyDataMapper.cxx (CVS tree as of 15th Nov.)
> change
> 
>      249   //
>      250   // if something has changed regenerate colors and display lists
>      251   // if required
>      252   //
>      253   if ( this->GetMTime() > this->BuildTime || 
>      254        input->GetMTime() > this->BuildTime ||
>      255        act->GetProperty()->GetMTime() > this->BuildTime ||
>      256        ren->GetRenderWindow() != this->LastWindow)
>      257     {
>      258     // sets this->Colors as side effect
>      259     this->MapScalars(act->GetProperty()->GetOpacity());
>      260 
> 
> To read:
> 
>      249   //
>      250   // if something has changed regenerate colors and display lists
>      251   // if required
>      252   //
>      253   if (1)
>      254     {
>      255     // sets this->Colors as side effect
>      256     this->MapScalars(act->GetProperty()->GetOpacity());
>      257 
> 
> 
> Note that I have not tried this myself but if Ann's patch is correct I
> guess this should be correct too.  According to Hank Childs
> <childs at hyper.llnl.gov> this problem occurs because of a problem in
> display lists.  Maybe you could confirm this behaviour by trying this
> change and checking if you still have missing polygons.  This might
> help the mesa folks.


Yes, making that change to the VTK code fixes the problem. So the
problem is with Mesa display lists and triangle strips?

Dave




More information about the vtkusers mailing list