Paul,

Thanks for tracking this down. I think I know the problem. I remember
changing vtkPVRenderView to accept LOD resolution as a normalized
value between [0,1], clearly I forgot to update the GUI. I'll push a
fix a post a patch.

Utkarsh

On Thu, Jun 21, 2012 at 5:35 AM, Paul Melis <[email protected]> wrote:
> Hi Utkarsh,
>
> I looked a bit into the code and the values used in
> pqGlobalRenderViewOptions::applyChanges() seem to be okay, e.g.
>
> void pqGlobalRenderViewOptions::applyChanges()
> {
>  ...
>
>  if (this->Internal->enableLOD->isChecked())
>    {
>    printf("pqGlobalRenderViewOptions::applyChanges():
> this->Internal->lodResolution->value() = %d\n",
> this->Internal->lodResolution->value());
>    settings->setValue("LODThreshold",
> this->Internal->lodThreshold->value() / 10.0);
>    printf("pqGlobalRenderViewOptions::applyChanges(): setting
> LODResolution to %d\n", 160-this->Internal->lodResolution->value() + 10);
>    settings->setValue("LODResolution",
> 160-this->Internal->lodResolution->value() + 10);
>
> gives me output like
>
> pqGlobalRenderViewOptions::applyChanges():
> this->Internal->lodResolution->value() = 106
> pqGlobalRenderViewOptions::applyChanges(): setting LODResolution to 64
>
> But when I look at the applied settings in
> vtkGeometryRepresentation::ProcessViewRequest(), after adding a printf()
> like this:
>
> void vtkPVRenderView::SetRequestLODRendering(bool enable)
> {
>  if (enable)
>    {
>    this->RequestInformation->Set(USE_LOD(), 1);
>        printf("vtkPVRenderView::SetRequestLODRendering():
> this->LODResolution = %g\n", this->LODResolution);
>    this->RequestInformation->Set(LOD_RESOLUTION(), this->LODResolution);
>    }
>  else
>
> this always outputs
>
> vtkPVRenderView::SetRequestLODRendering(): this->LODResolution = 1
>
> no matter what the slider is set to, leading to
> vtkGeometryRepresentation::ProcessViewRequest() always setting the
> decimator to 160^3:
>
> ...
> // this is where we will look to see on what nodes are we going to
> render and
>    // render set that up.
>    bool lod = this->SuppressLOD? false :
>      (inInfo->Has(vtkPVRenderView::USE_LOD()) == 1);
>    if (lod)
>      {
>      if (inInfo->Has(vtkPVRenderView::LOD_RESOLUTION()))
>        {
>        int division = static_cast<int>(150 *
>          inInfo->Get(vtkPVRenderView::LOD_RESOLUTION())) + 10;
>            printf("SETTING DECIMATOR TO %d^3 DIVISIONS\n", division);
>        this->Decimator->SetNumberOfDivisions(division, division, division);
>        }
> ...
>
> Does this make any sense to you?
>
> Regards,
> Paul
>
> PS: The other project we had contact on is on my todo-stack, hope to
> pick it up again in the near future :-/
>
>
> On 06/20/2012 04:14 PM, Utkarsh Ayachit wrote:
>> Ok, I do some funkiness in that regard. Let me try to track that down.
>>
>> Utkarsh
>>
>> On Wed, Jun 20, 2012 at 10:06 AM, Paul Melis <[email protected]> wrote:
>>> Ah, missed that. But my issue is not that the LOD-rendering mesh is the
>>> same as the fullres one (it's not, as expected), but that the LOD
>>> resolution setting does not seem to influence the LOD mesh in my case.
>>> Especially for a very large mesh I would expect 10^3 versus 160^3 to
>>> make a whopping difference.
>>>
>>> On 06/20/2012 04:03 PM, Utkarsh Ayachit wrote:
>>>> Look closely. They are not the same. Look the wireframing around the
>>>> centre of the sphere closely.
>>>>
>>>> On Wed, Jun 20, 2012 at 9:53 AM, Paul Melis <[email protected]> wrote:
>>>>> Hmmm, amiss at my end or in ParaView? The LOD and non-LOD views of your
>>>>> sphere are the same it seems.
>>>>>
>>>>> On 06/20/2012 03:50 PM, Utkarsh Ayachit wrote:
>>>>>> Something's amiss. Attached are images of what I see when I interact
>>>>>> with a default sphere.
>>>>>>
>>>>>> Utkarsh
>>>>>>
>>>>>> On Wed, Jun 20, 2012 at 9:44 AM, Paul Melis <[email protected]> wrote:
>>>>>>> Does the LOD render use quadric clustering by the way?
>>>>>>> And if so, should the LOD resolution setting produce the same mesh
>>>>>>> during interactive rendering as when applying a Quadric Clustering
>>>>>>> filter to the same input with the same resolution settings?
>>>>>>>
>>>>>>> On 06/20/2012 03:40 PM, Paul Melis wrote:
>>>>>>>> Hmm, maybe not a good test, as depending on the sphere resolution a the
>>>>>>>> quadric clustering will produce the same results for a range of
>>>>>>>> dimension settings (i.e. 10^3 and up)
>>>>>>>>
>>>>>>>> On 06/20/2012 03:36 PM, Paul Melis wrote:
>>>>>>>>> I actually get the same result when using the builtin server.
>>>>>>>>>
>>>>>>>>> On 06/20/2012 03:34 PM, Paul Melis wrote:
>>>>>>>>>> Same result, I see no difference in meshes used during interaction
>>>>>>>>>> between 10x10x10 and 160x160x160 for LOD Resolution. Just to make 
>>>>>>>>>> sure:
>>>>>>>>>>
>>>>>>>>>> - LOD Threshold is checked, set to 0.00 MBytes
>>>>>>>>>> - Remote Render Threshold is checked, set to 0 MBytes
>>>>>>>>>>
>>>>>>>>>> Paul
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 06/20/2012 03:28 PM, Utkarsh Ayachit wrote:
>>>>>>>>>>> Try reproducing with sphere source. Any luck?
>>>>>>>>>>>
>>>>>>>>>>> On Wed, Jun 20, 2012 at 9:26 AM, Paul Melis <[email protected]> 
>>>>>>>>>>> wrote:
>>>>>>>>>>>> It's already at 0 (see below).
>>>>>>>>>>>>
>>>>>>>>>>>> Paul
>>>>>>>>>>>>
>>>>>>>>>>>> On 06/20/2012 03:16 PM, Utkarsh Ayachit wrote:
>>>>>>>>>>>>> WHat is the LOD Threshold set to? Try setting it to 0.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Utkarsh
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Wed, Jun 20, 2012 at 6:07 AM, Paul Melis <[email protected]> 
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>> Hi,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I'm doing remote rendering with PV 3.14.0, with quite a large 
>>>>>>>>>>>>>> set (isosurface of 98M tris) on 16 render nodes, each with a 
>>>>>>>>>>>>>> GTX460 and 12 GB RAM (Linux 64-bit cluster btw).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> This model renders like a dog when interacting. I've checked the 
>>>>>>>>>>>>>> subsampling settings, compression settings and LOD settings to 
>>>>>>>>>>>>>> see make sure I'm actually using lower resolution rendering and 
>>>>>>>>>>>>>> model decimation during interaction. I have enabled LOD 
>>>>>>>>>>>>>> Threshold and set the value to 0 (to force LOD usage during 
>>>>>>>>>>>>>> interaction, per tooltip).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> But I don't see any difference in the actual decimated model 
>>>>>>>>>>>>>> used during interactive rendering for different LOD Resolution 
>>>>>>>>>>>>>> values (checked using surface-with-edges repr and rendering 
>>>>>>>>>>>>>> without subsampling). I also don't see how the value for LOD 
>>>>>>>>>>>>>> resolution relates to the actual model used. I would expect 
>>>>>>>>>>>>>> something like quadric clustering to be used, but when e.g. 
>>>>>>>>>>>>>> setting LOD resolution to 10x10x10 the model during interaction 
>>>>>>>>>>>>>> uses many more triangles than "10 per direction" (or per data 
>>>>>>>>>>>>>> piece assigned per process, when showing Process Id Scalars).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I just don't see any difference between different LOD resolution 
>>>>>>>>>>>>>> settings. Am I missing a setting somewhere?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>> Paul
>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>> Powered by www.kitware.com
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Visit other Kitware open-source projects at 
>>>>>>>>>>>>>> http://www.kitware.com/opensource/opensource.html
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Please keep messages on-topic and check the ParaView Wiki at: 
>>>>>>>>>>>>>> http://paraview.org/Wiki/ParaView
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Follow this link to subscribe/unsubscribe:
>>>>>>>>>>>>>> http://www.paraview.org/mailman/listinfo/paraview
>>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> Powered by www.kitware.com
>>>>>>>>>>
>>>>>>>>>> Visit other Kitware open-source projects at 
>>>>>>>>>> http://www.kitware.com/opensource/opensource.html
>>>>>>>>>>
>>>>>>>>>> Please keep messages on-topic and check the ParaView Wiki at: 
>>>>>>>>>> http://paraview.org/Wiki/ParaView
>>>>>>>>>>
>>>>>>>>>> Follow this link to subscribe/unsubscribe:
>>>>>>>>>> http://www.paraview.org/mailman/listinfo/paraview
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>
>>>
>
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the ParaView Wiki at: 
http://paraview.org/Wiki/ParaView

Follow this link to subscribe/unsubscribe:
http://www.paraview.org/mailman/listinfo/paraview

Reply via email to