DiscussionsIssue archiveOCCT:Visualization

Archived issue #0024368

Intel HD Graphics 4000: Problem displaying point markers with recent drivers

CommunityOCCT:Visualizationclosed10 public notes

Search issues

Description

I can observe the following problem on the current master (IR-2013-11-14): displaying point markers interferes with the trihedron (or maybe rather with the trihedron's texts - don't know).

I had strange effects:
- not all visualized point markers displayed
- erasing/displaying AIS_Shapes affects the visualization of point markers (point markers appearing/disappearing as other AIS_Shapes are shown/hidden)
- sometimes the point markers are rendered under the gradient background (vsetgradientbg DRAW command - but I wasn't able to reproduce this behaviour 100% using DRAW)

Steps to reproduce

Run the following script without displaying trihedron (comment 'vtrihedron tr' out). In my case there are six points displayed - Attachment 1 (PNG). When I run the script with the trihedron on, only five points are shown - Attachment 5 (PNG). When I try to select one point now it disappears and the one that was missing before gets highlighted - Attachment 4 (PNG).
==================================================

pload ALL
vinit

vtrihedron tr

vertex v1 10 10 10
vdisplay v1
vertex v2 10 -10 10
vdisplay v2

vertex v3 20 20 10
vdisplay v3
vertex v4 20 -20 10
vdisplay v4

vertex v5 30 30 10
vdisplay v5
vertex v6 30 -30 10
vdisplay v6

vfit

Public activity

10 archived notes

Participants are labeled by their role within this record.

01Commenter 1
Dear Author,

We are not able to reproduce the problems you reported with the same OCCT snapshot as you used.
Thus can you please try the following:

1. Use vcaps sprites=[0|1] DRAW command before displaying the vertices to check if enabling/disabling point sprites has any impact on the visual result.

2. Create and display a box that encloses all vertices in 3D - to see if the problem is related to viewing volume clipping or not.
02Commenter 2
Please also specify the output of Draw Harness commands 'dversion' and 'vglinfo' thus we can analyze possible dependencies from building options and OpenGL drivers.
03Author
Dear Sergey,

I followed your advice to narrow the problem and uploaded some images. Here are the results:

1. Yes, after deactivating point sprites the problem does not occur (Attachment 3 (PNG)).

2. No, the problem does not seem to be related to volume clipping. After creating/displaying a box enclosing all the points it still persists (Attachment 2 (PNG) - one point is missing after selecting the box!!).

As stated above, interesting is that the problem occurs only if displaying trihedron that's why I thought it might be related to the text somehow...

I'm using NVIDIA Quadro K2000M. OCCT is compiled with VC2008 (both x86 and x64), Freeimage 3.15.4, Freetype 2.4.11, gl2ps 1.3.8 are used.

Any idea what might cause this?
04Author
x64-VERSION

Draw[2]> dversion
Open CASCADE Technology 6.7.0.beta
TBB enabled (HAVE_TBB)
GL2PS enabled (HAVE_GL2PS)
FreeImage enabled (HAVE_FREEIMAGE)
OpenCL disabled
Exceptions disabled (No_Exception)
Compiler: MS Visual C++ 9.0 (_MSC_FULL_VER = 150030729)
Architecture: AMD64
OS: Windows

=====================

x86-VERSION
Draw[32]> dversion
Open CASCADE Technology 6.7.0.beta
TBB enabled (HAVE_TBB)
GL2PS enabled (HAVE_GL2PS)
FreeImage enabled (HAVE_FREEIMAGE)
OpenCL disabled
Exceptions disabled (No_Exception)
Compiler: MS Visual C++ 9.0 (_MSC_FULL_VER = 150030729)
Architecture: Intel x86
OS: Windows

Driver1/Viewer1/View1
Draw[5]> vglinfo
OpenGL info:
  GLvendor = 'Intel'
  GLdevice = 'Intel(R) HD Graphics 4000'
  GLversion = '4.0.0 - Build 9.17.10.3040'
  GLSLversion = '4.00 - Build 9.17.10.3040'


This is interesting, it only gets the information on the on-board card. Is there any possibility to query all the graphics cards on the system?
05Commenter 2
> This is interesting, it only gets the information on the on-board card.
> Is there any possibility to query all the graphics cards on the system?
Modern Windows systems load only single OpenGL driver at the same moment (for GPU which primary display is connected to, the output to other displays is re-directed as pre-rendered image).

Some vendors provide own extensions to choose rendering device within the same driver (AMD APU + AMD RadeOn for example).

But there are exceptions like Optimus technology which is implemented with serious hacks and nobody can explain how to control this bundle on Windows system. The rendering device in this case might be chosen only by user within driver settings (although additional hacks may be implemented in executable to override driver defaults).
06Commenter 2
  GLversion = '4.0.0 - Build 9.17.10.3040'

I'm not on the line of Intel updates but it looks like a fresh one.
Please notice that we have reports about serious visualization regressions (although OCCT itself was not tested on them) within recent Intel drivers (1-2 months).

07Commenter 7
Hello Author,

On my notebook I have integrated Intel and discrete NVIDIA graphic cards, and I can select which one is used somewhere in NVIDIA control panel (sorry cannot check exact option right now). If set to "auto", it uses Intel graphics and result is usually poor. Perhaps you could try this option to enforce use of NVIDIA card and see if this helps.
08Author
Hello guys,

thanks for your hints!

Yes the problem was my machine used the Intel graphics driver instead of NVIDIA. After switching it everything works fine.

So the problem refers only to the Intel driver.
09Commenter 9
Dear Author,

I have a similar "Intel + NVIDIA" video configuration, however Intel driver is older - see below:

Draw[22]> vglinfo
OpenGL info:
  GLvendor = 'Intel'
  GLdevice = 'Intel(R) HD Graphics 4000'
  GLversion = '3.3.0 - Build 8.15.10.2696'
  GLSLversion = '3.30 - Intel Build 8.15.10.2696'

And I observe no visual problems. I played with text and textures using vdrawtext, vtexture and vtextureenv commands.
vmarkerstest command also works well.

So I agree with previous remark by Commenter 2 that this is rather a version-specific problem of Intel drivers. You should contact Intel support if this is not suitable for you, here we can hardly help.

Nonetheless, we foresaw situations like this and implemented compatibility mode of markers visualization based on glBitmap calls.
You can switch to this mode in DRAW using vcaps sprites=0 as I already explained.
So you can try to manage this at the application level as a temporary workaround, until you have received any feedback from Intel.

10Commenter 10
Dear Commenter 1,

Please close this issue, we are not going to fix anything.

Related records