Share this post

Link to post

Share on other sites

I'd advise forgetting about polygon offset for starters; it's not intended as a general-purpose solution to Z-fighting, and the specification allows it's effects to be implementation-specific - in other words, it's fairly useless.

Instead, have a look at how you're drawing - specifically how you're transforming - the polygons that fight. Do they share the same geometry as other scene polygons? Are you using ftransform for one set but matrix multiplication for another? Or fixed pipeline for one set but programmable for another? Because OpenGL isn't a pixel-exact specification, and because you may be using paths where invariance isn't guaranteed, it's entirely possible that the Intel behaviour is actually within spec (i.e. not a bug) but just undesirable nonetheless.

Ultimately the solution of last resort may be to adjust your source geometry so that this kind of thing doesn't happen.