[osg-users] RayTracedTechnique hangs with Intel HD Graphics - Update

Clement.Chu at csiro.au Clement.Chu at csiro.au
Sat Sep 2 19:26:31 PDT 2017


Hi,

    This is two different problems.  The length method problem is fixed since osg 3.2.3.  See this post http://forum.openscenegraph.org/viewtopic.php?t=15148 for the details.

    Recently, I found the problem is related to Intel graphic driver.  Specify on latest Intel graphic cards.  My work laptop is dell and there is no problem on old Intel graphic card.  Since I changed to new dell laptop with latest Intel graphic card, I found the problem is on gl_Vertex which value is not normalised and causes the crash on sampling loop.  So far I tested 5 different laptops with different Intel graphic cards.  Only Intel graphic card with 3 digit version number will cause the problem (old Intel card is using 4 digit for version).

Regards,
Clement Chu

________________________________________
From: osg-users <osg-users-bounces at lists.openscenegraph.org> on behalf of Julien Valentin <julienvalentin51 at gmail.com>
Sent: Sunday, 3 September 2017 04:00
To: osg-users at lists.openscenegraph.org
Subject: Re: [osg-users] RayTracedTechnique hangs with Intel HD Graphics -      Update

Hi,
it surely is the duplicate of
http://forum.openscenegraph.org/viewtopic.php?t=14304
I thought this issue was fixed since all this time
The hack i use is there
curious bug indeed, and so curious solution too
@robert
Perhaps it may be merged into master...your call...

cheers


Clement wrote:
> Hi,
>
> Finally I found where causes the problem.  For some reasons, gl_Vertex is not normalized.  I looked at osg shader source code (src\osgVolume\Shaders).  For example, in file volume_frag.cpp,
>
> vec4 t0 = vertexPos;
> vec4 te = cameraPos;
>
> // by default te did to check the range (0 and 1), but t0 did not.
> // If I added  some codes to check the range, then the problem is completed gone.
>
> if (t0.x<0.0) t0.x = 0.0; if (t0.x>1.0) t0.x = 1.0;
> if (t0.y<0.0) t0.y = 0.0; if (t0.y>1.0) t0.y = 1.0;
> f (t0.z<0.0) t0.z = 0.0; if (t0.z>1.0) t0.z = 1.0;
>
>
> I believe the problem is related to GLSL version and latest Intel HD Graphics driver is using higher version of GLSL, but gl_Vertex does not normalize or the value is just over 1 or less then 0 (eg. 1.00001).  Then it causes the crash when running the sampling loop.  I am not an expert on GLSL, so I would like to confirm the best solution to handle this problem. Thanks.
>
>
> Regards,
> Clement Chu
>
> ________________________________________
> From: osg-users <> on behalf of  <>
> Sent: Wednesday, 30 August 2017 17:31
> To:
> Subject: [ExternalEmail]  RayTracedTechnique hangs with Intel HD Graphics
>
> Hi,
>
> My program uses RayTracedTechnique for volume rendering, but it hangs with Intel HD graphics 520, 530 and 620. My old laptop works fine which is using Intel HD Graphic 3000.  Other machines with Nvidia cards are working fine too.  I believe the problem is on shaders in the sampling loop.  My program is using osg 3.2.3.  I also tried to upgrade to osg 3.4.1, but the same problem occurred with Intel HD Graphic 520, 530 and 620.  Do anyone have similar problem and any solution to fix it?  Many thanks.
>
>
> Regards,
> Clement Chu
> _______________________________________________
> osg-users mailing list
>
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
> _______________________________________________
> osg-users mailing list
>
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
>  ------------------
> Post generated by Mail2Forum


------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=71607#71607





_______________________________________________
osg-users mailing list
osg-users at lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


More information about the osg-users mailing list