Rendering of a 3D model is broken when using an Intel integrated graphics card
Describe the bug We are seeing an issue rendering a model on a machine which has an integrated Intel graphics card. In edge if we enable the use graphics acceleration when available setting (which is on by default) then the 3D model is rendered incorrectly in the view. If we disable the setting then it renders correctly, but performance is extremely slow.
We initially saw this within our own application but we are also able to reproduce it using the most basic getting started tutorial, with the smart house model.
The screenshots below should illustrate the broken state. On the other machines we've tested this on, with different graphics cards, we haven't seen this behaviour.
The iTwin compatibility checker doesn't report any issues.
The graphics product we are seeing this issue with is Intel(R) Graphics, running on a Windows 11 machine.
To Reproduce Steps to reproduce the behavior:
- With the above graphics card, and using Edge
- Ensure the use graphics acceleration when available setting is enabled in Edge
- Open the viewer for any 3D model
- Observe the model not being correctly rendered
Expected behavior The 3D model should render correctly.
Screenshots
With hardware acceleration enabled - broken
With hardware acceleration disabled- working
Desktop (please complete the applicable information):
- OS: Windows 11
- Browser: Edge
- Version: 136.0.3240.76 (Official build) (64-bit)
- iTwin.js Version 4.11.2
Additional context
Hi @jon-dicken,
Are you able to provide the actual name of your Intel integrated graphics chip? The symptoms seem similar to those afflicting Intel HD Graphics 620/630. Device ID "7D40" suggests maybe you've got an Intel 740? Please confirm.
Thanks, Paul
cc @markschlosseratbentley
Hi @pmconne, thanks for getting back so quickly.
I believe the integrated graphics chip is an 7D40 Intel® Graphics Xe-LPG from the Meteor Lake family.
Intel page for the processor - https://www.intel.com/content/www/us/en/products/sku/237508/intel-core-ultra-7-processor-164u-12m-cache-up-to-4-80-ghz/specifications.html
Hope that helps. Let me know if you need any further details.
Thanks,
Jon
Thanks @jon-dicken. It does seem likely to be the same driver bug as some other Intel chips, for which we apply a workaround already. I submitted #8157 as a presumed fix. Unfortunately, I lack access to a machine with that chip to test with.
If you have access to such a machine, the fix can be tested in display-test-app which is included in the itwinjs-core repo. Clone the repo, make sure you are using Node 20, build the branch with the proposed fix, and run display-test-app:
npm install -g @microsoft/rush
corepack enable pnpm
cd itwinjs-core
rush install
rush build --to display-test-app
cd test-apps/display-test-app
npm run start
(If you want to test in Edge instead of Electron, you can do npm run start:servers instead, and navigate to localhost:3000. But they both use the same component for rendering).
Your screenshots indicate you already have a local copy of the house model. Click the left-most button in display-test-app's toolbar to open that model and see if it renders correctly.
Thanks for the change @pmconne
My colleague followed the steps on the machine that is seeing the issue but unfortunately it still displayed the same problem - as seen in the screenshot below.
If there is anything we can provide, or additional steps / tests that we can do, then please let us know.
Thanks for taking it for a spin, @jon-dicken. @markschlosseratbentley if we're going to solve this we will need to get access to hardware.
@pmconne I will ask around and see if we have any similar hardware already.
@jon-dicken Would you be able to provide us the Renderer and Vendor information that is reported when you disable hardware acceleration and everything looks good? (The same screenshot you showed with System Information in the original description).
Hi @markschlosseratbentley
@jon-dicken isn't available today but i've managed to grab the information you asked for. Thanks for looking into it.
Thanks very much @gwilkinsTT. We are working on obtaining hardware to aid our investigation. We'll keep you posted.
@gwilkinsTT @jon-dicken While we look into obtaining hardware, we wanted to check the following:
- Do these machines have the latest Intel graphics drivers installed? If not, can you try to install the very latest and see if it helps the issue?
- Are these specific chipsets critical to find a workaround for? i.e. the only machines you have access to.
- Do you have any Ultra 165U chipsets? If so, do they exhibit similar problems for you? They seem very related to the Ultra 164U, but are more accessible for retail sale at the moment.
Hi @markschlosseratbentley
Thanks for the update and continuing help. Answers below, although i'm afraid they don't really help.
- Yes, the latest drivers have been installed.
- Yes, they are the only machines some of our team have access to and (ideally) are used for client demonstrations as well as development.
- I don't believe so but I can ask around the wider team within the business and try to check and try it out if I'm successful.
For context, we have also received reports of similar issues with an Ultra 165U.
@markschlosseratbentley
This might be helpful, or adding to the pain....
We have 2 users who both have an Ultra 165H CPU
One is reporting the same flattening issue in the render, whilst the other sees the model absolutely fine. They have used the example app https://www.itwinjs.org/sandboxes/iTwinPlatform/Zoom%20to%20Elements/
The one that has the flattening issue has this System Information
The one that renders absolutely fine has this System Information
There is a difference in the User Agent between the 2 laptops - 137.0.0.0 vs 136.0.0.0
Thanks @gwilkinsTT. It could be helpful to see if rolling back to a previous version of Chrome on the problem device resolves the issue.
Also, our IT team has reported that another similarly-affected user resolved the issue by rolling back their display driver as described below. It could be helpful to know the driver dates for each of your two laptops, and if they differ, whether rolling back resolves the issue.
- Launch command prompt as admin
- Type DEVMGMT and hit enter
- Verify the display drivers have the date 4/2/2025 (2 April 2025) and remove it
I don't propose either of these as "solutions" but they may inform how we proceed (e.g., notifying the chromium team of a regression).
Hi @pmconne
We have group policies in place which only allow us to use Microsoft Edge as our browser and updates to that are centrally controlled.
Rolling back to a previous driver doesn't seem to have made any difference unfortunately - the previous driver was dated Oct 2024
Update: we are awaiting access to hardware in order to try to investigate further.
We have received a report of similar problems with an Ultra 7 165H now as well.
So far we have received reports of similar problems for the following Intel chips:
- Ultra 7 164U
- Ultra 7 165U
- Ultra 7 165H
We received a device (Dell Latitude 7450) with an Ultra 7 165U.
I reproduced the problem. It only occurs with the latest Intel display driver. Rolling back the driver to the Intel driver that Windows itself wants installed fixes the problem.
Bad driver details:
- Provider Intel Corporation
- Version 32.0.101.6881
- Date 6/4/2025
Observations:
- The rendering is correct when not interacting with the scene.
- Once you hover over, highlight, or otherwise select an element, the scene becomes corrupted as long as that element is hovered-over, highlighted, or otherwise selected.
- While the problem is active, the rendering of the geometry becomes corrupted - zingers go across the screen and it appears as if the geometry itself has all of its vertices scrambled (exploded appearance).
- As soon as the hovering-over, highlighting, or selection ends, the problem goes away.
Initial Experiment Results:
- Activated the early Z workaround as in https://github.com/iTwin/itwinjs-core/pull/8157. Verified this does not fix the problem.
- Forced the system to fall back to half float and then unsigned byte rendering. Neither fixes the problem.
- Forced the system to fall back to depth buffer type of unsigned short render buffer. This does not fix the problem.
I have found a similar active driver problem report with the same Ultra 7 series on Intel's community GPU issue tracker, notably:
- https://github.com/IGCIT/Intel-GPU-Community-Issue-Tracker-IGCIT/issues/1082
Going Forward:
- We can investigate further, but the initial experiment results indicate this may involve a lengthier investigation. There may also not be a workaround possible for this particular driver. For now, rolling back the driver is the immediate solution. As we continue to investigate, there is no guarantee we will find a workaround.
- We can track the above linked issue on Intel's community GitHub.
- We can also file our own problem report to Intel and monitor that.
@markschlosseratbentley
Thanks for the update.
We have a Dell 7350 with an Ultra7 164U and unfortunately rolling the driver back to older versions doesn't appear to resolve the issue.
Current driver details
Provider Intel Corporation Version 32.0.101.6733 Date 2nd April 2025
We have a Dell 7350 with an Ultra7 164U and unfortunately rolling the driver back to older versions doesn't appear to resolve the issue.
@gwilkinsTT
How far back did you roll the driver?
I rolled back to the following driver, and the problem goes away on the 165U:
Provider: Intel Corporation Version: 32.0.101.6078 Date: 9/13/2024
I posted a comment on the GitHub issue I found: https://github.com/IGCIT/Intel-GPU-Community-Issue-Tracker-IGCIT/issues/1082#issuecomment-3013749840
We have a Dell 7350 with an Ultra7 164U and unfortunately rolling the driver back to older versions doesn't appear to resolve the issue.
How far back did you roll the driver?
I rolled back to the following driver, and the problem goes away on the 165U:
Provider: Intel Corporation Version: 32.0.101.6078 Date: 9/13/2024
I can only rollback to 32.0.101.6078
New issue posted on Intel's GitHub: https://github.com/IGCIT/Intel-GPU-Community-Issue-Tracker-IGCIT/issues/1165
Intel is investigating, as mentioned in https://github.com/IGCIT/Intel-GPU-Community-Issue-Tracker-IGCIT/issues/1165#issuecomment-3097873553
@jon-dicken There is now a workaround for this in itwinjs-core. Can you let us know if this solves the problem?