<div dir="ltr"><div><div><div>HI Clement,<br><br></div>Curious... but what I don't understand is how the Intel compiler was progressing on to the if (num_iteration!=num_iterators) as this should only be run on NVidia cards thank to the #idef NVIDIA_Corportion guard around it,<br><br></div>Are you backporting the shaders to 3,2,x?<br><br></div>Robert.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On 17 August 2015 at 07:33,  <span dir="ltr"><<a href="mailto:Clement.Chu@csiro.au" target="_blank">Clement.Chu@csiro.au</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Robert,<br>
<br>
   I got funny volume display problem on intel card (it lost some opacity values).  I checked the shader code and I found the problem on handling NaN with using if statement.<br>
<br>
Your code is :<br>
<br>
                     "    if (num_iterations<min_iterations) num_iterations = min_iterations;\n"<br>
                     "    else if (num_iterations>max_iterations) num_iterations = max_iterations;\n"<br>
                     "    else if (num_iterations!=num_iterations) num_iterations = max_iterations;\n"<br>
<br>
<br>
   I checked NaN on wiki <a href="https://en.wikipedia.org/wiki/NaN" rel="noreferrer" target="_blank">https://en.wikipedia.org/wiki/NaN</a>.  The non-signaling value won't do standard comparison, so I changed the code as below.<br>
<br>
                     "    if (num_iterations!=num_iterations) num_iterations = max_iterations;\n"<br>
                     "    else if (num_iterations<min_iterations) num_iterations = min_iterations;\n"<br>
                     "    else if (num_iterations>max_iterations) num_iterations = max_iterations;\n"<br>
<br>
  Check the value whether it is NaN on first condition and it works as normal on intel card now.<br>
<span class=""><br>
<br>
<br>
Regards,<br>
Clement<br>
<br>
<br>
________________________________________<br>
From: osg-users [<a href="mailto:osg-users-bounces@lists.openscenegraph.org">osg-users-bounces@lists.openscenegraph.org</a>] on behalf of Robert Osfield [<a href="mailto:robert.osfield@gmail.com">robert.osfield@gmail.com</a>]<br>
</span>Sent: Wednesday, 12 August 2015 23:58<br>
<span class="im HOEnZb">To: OpenSceneGraph Users<br>
Subject: Re: [osg-users] Volume image crash on the latest version of Nvidia     driver<br>
<br>
</span><span class="im HOEnZb">On 12 August 2015 at 14:47, <Clement.Chu@csiro.au<mailto:<a href="mailto:Clement.Chu@csiro.au">Clement.Chu@csiro.au</a>>> wrote:<br>
Hi Robert,<br>
<br>
  I have tested on both Intel and Nvidia machines.  The solution works without any issue.  Thanks.<br>
<br>
I have applied this fix to OSG-svn/trunk, OSG-3.2.3 and OSG-3.4.0 so we should now be good to go.<br>
<br>
Robert.<br>
<br>
<br>
</span><div class="HOEnZb"><div class="h5">_______________________________________________<br>
osg-users mailing list<br>
<a href="mailto:osg-users@lists.openscenegraph.org">osg-users@lists.openscenegraph.org</a><br>
<a href="http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org" rel="noreferrer" target="_blank">http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org</a><br>
</div></div></blockquote></div><br></div>