[vtkusers] very slow rendering of stream geometry

Mykhaylo Kostandov mk at cs.brown.edu
Sat Mar 17 17:07:43 EDT 2007


Thanks for your reply Brian.

Sorry for not providing all the details, it was my first post to this list.

I did try to switch immediate mode rendering on before, and while it
allowed to add a bit more streamlines or to decrease the step just a
little, it was not a significant improvement (besides, interactivity
slowed down to a crawl).

I realize now I should have been more specific in describing the
problem. I am able to get *some* small-scale setups to render (so it's
likely not a problem with display lists), but problems occur as I'm
increasing the number of seeds, or decrease the integration step, or
adding more geometry (whether with tubeFilter or glyphs).

I just wanted to verify that I'm using the right sequence of filters,
etc. So there's nothing wrong with the code itself, correct?

I'm running Debian (2.6.17.6cs.a64.nfsv4.smp.hm.1) on an Athlon 64 X2
Dual Core 3800+ with 2GB physical memory. Video card is GeForce 6150.

Thanks a lot!
-Mike



Wylie, Brian wrote:
> Mike,
>
> Try adding this option to you mapper...
>
> sph_map->ImmediateModeRenderingOn();
>
>
> For some reason display lists may not be working on your hardware. Also
> anytime you have any issue with VTK you should always list out your
> hardware, OS, compiler... Some of these things can have platform
> dependencies...
>
> Another thing is that updating your video drivers can be helpful (if you
> haven't already done that.. )
>
>   Brian Wylie - Org 1424
>   Sandia National Laboratories
>   MS 0822 - Building 880/A1-J
>   (505)844-2238 FAX(505)845-0833    
>        _______ __
>       /_  __(_) /_____ _____
>        / / / / __/ __ `/ __ \
>       / / / / /_/ /_/ / / / /
>      /_/ /_/\__/\__,_/_/ /_/
>             VTK Informatics Toolkit
>   
>
>   
>> -----Original Message-----
>> From: vtkusers-bounces+bnwylie=sandia.gov at vtk.org 
>> [mailto:vtkusers-bounces+bnwylie=sandia.gov at vtk.org] On 
>> Behalf Of Mykhaylo Kostandov
>> Sent: Friday, March 16, 2007 9:50 PM
>> To: vtkusers at vtk.org
>> Subject: [vtkusers] very slow rendering of stream geometry
>>
>> Greetings all,
>>
>> I am experiencing some problems displaying flow fields with 
>> streamlines filtered with tubes or glyphs or pretty much any 
>> other filter. The dimensions of velocity field datasets I'm 
>> dealing with are 40x40x40, and all I'm trying to do right now 
>> is to seed the streamlines with a vtkPointSource and apply 
>> the vtkTubeFilter. As for streamlines, it seems that the only 
>> way to get them to show up is to drastically reduce the 
>> number of seeding points and increase the integration step 
>> length; otherwise, the system just can't handle it. Once I 
>> apply the vtkTubeFilter, it's virtually impossible to get it 
>> to work unless there are only a few seeds left, and the 
>> integration step is very high (see below).
>>
>> The processing itself doesn't take too long, but entering the 
>> render takes literally forever (and either segfaults or hangs).
>>
>> In ParaView, however, everything works fine with much greater 
>> propagation times and number of seeds, as well as with 
>> reasonable integration step lengths.
>>
>> I tried reducing the poly complexity with vtkStripper, etc. 
>> but it didn't help.
>>
>> Any help would be greatly appreciated. Thank you all very much!
>>
>> -Mike
>>
>> Here's a snippet:
>>
>>     vtkDataSetReader *dataset = vtkDataSetReader::New();
>>
>>     dataset->SetFileName("vortex5-0010.vtk");
>>
>>     vtkPointSource *seeds = vtkPointSource::New();
>>     seeds->SetRadius(5);
>>     seeds->SetCenter(19.5,19.5,19.5);
>>     seeds->SetNumberOfPoints(10);
>>
>>     vtkRungeKutta4 *sph_rk4 = vtkRungeKutta4::New();
>>     vtkStreamLine *sph_stream = vtkStreamLine::New();
>>    
>>     sph_stream->SetInput(dataset->GetOutput());
>>     sph_stream->SetSource(seeds->GetOutput());
>>     
>>     sph_stream->SetMaximumPropagationTime(123000);
>>     sph_stream->SetIntegrationStepLength(1); // .5
>>     sph_stream->SetStepLength(2); // .1
>>     
>>     sph_stream->SetNumberOfThreads(1);
>>     sph_stream->SetIntegrationDirectionToIntegrateBothDirections();
>>     sph_stream->SetIntegrator(sph_rk4);
>>     sph_stream->SpeedScalarsOn();
>>     sph_stream->Update();
>>   
>>      vtkTubeFilter *tubes;
>>     
>>      tubes = vtkTubeFilter::New();
>>      tubes->SetInput(sph_stream->GetOutput());
>>      tubes->SetRadius(0.2);
>>      tubes->SetNumberOfSides(6);
>>
>>      vtkPolyDataMapper *sph_map = vtkPolyDataMapper::New();
>>  
>>      sph_map->SetInput(tubes->GetOutput());
>>
>>     vtkActor *sph_actor = vtkActor::New();
>>     sph_actor->SetMapper(sph_map);
>>
>>
>>
>> _______________________________________________
>> This is the private VTK discussion list. 
>> Please keep messages on-topic. Check the FAQ at: 
>> http://www.vtk.org/Wiki/VTK_FAQ Follow this link to 
>> subscribe/unsubscribe:
>> http://www.vtk.org/mailman/listinfo/vtkusers
>>
>>
>>     




More information about the vtkusers mailing list