Page MenuHome

Smoke Domain on Windows on "high-performance" GPU causes no smoke and grey objects in material/renderpreview/F12 EEVEE
Closed, ResolvedPublic

Description

System Information
Operating system: Windows-10-10.0.18362-SP0 64 Bits
Graphics card: Intel(R) HD Graphics 4600 Intel 4.3.0 - Build 20.19.15.4835 (DEFAULT GPU)
Graphics card: AMD Radeon HD 8790M ATI Technologies Inc. 4.5.13397 Core Profile Context 0 ("HIGH-PERFORMANCE" GPU)

Blender Version
Broken: version: 2.83 (sub 6), branch: master, commit date: 2020-03-06 04:07, hash: rBe97aed1e73e7

NOTE: also broken in 2.82 and 2.81a release versions Worked: 2.80

Short description of error
With "high-performance" GPU active (methods given below), the Material Preview, Render Preview, and F12 render have the following problems:

  • smoke does not show
  • other scene objects are middle gray
  • world background is mostly grey (see screenshots)

For command line renders using high-perf GPU, the smoke does not show, but the other objects are correct (not grey).

Fails in 2.81a, 2.82, 2.83
Works in 2.80

Exact steps for others to reproduce the error

  1. Set BLENDER.EXE to prefer alternate GPU via either method:
    • Display Settings -> Graphics settings (to make Blender run on "high-performance" GPU)
    • reg add "HKCU\Software\Microsoft\DirectX\UserGpuPreferences" /v "C:\path\to\blender.exe" /t REG_SZ /d "GpuPreference=2;" /f
  2. run BLENDER
  3. Use default scene
  4. On default cube: Object, Quick Effects, Quick Smoke
  5. Add any other object (e.g. monkey), move it over (e.g. gx3), and give it new visible material (e.g. red)
  6. Switch to Material Preview or Render Preview Note that all objects are grey (world colour may show a bit) You may need to move to next frame (first frame may not show the issue, perhaps due to caching)
  7. Toggle Smoke Domain visibility Note that objects are visible now (e.g. monkey is red)

Simple .blend files are attached, created using 2.81a release and 2.83 alpha, but I suggest using the steps above, since bphys files are not included.

Event Timeline

Ankit Meel (ankitm) changed the task status from Needs Triage to Needs Information from User.Mar 6 2020, 9:49 PM

for

smoke does not show

https://developer.blender.org/T73799
So please edit the task to remove it & make it a bit narrow

To clarify:

I should have mentioned earlier that I believe that this is EEVEE related, and I apologize for that rather significant omission.

Smoke simulations (including those of much greater complexity) in fact DO work on my hardware. They calculate and run properly, whether my active GPU is Intel 4600 (default, GPU 1) or AMD Radeon HD 8790M ATI (hi-perf, GPU 2). I can bake sims while either GPU is active. For example, I can bake while the hi-perf GPU is active, then save and exit Blender, switch GPUs to the default, then re-run Blender and the sim works and displays fine.

The issue is one of DISPLAY with EEVEE while the hi-perf GPU is active: sims display correctly in solid mode, but don't render properly in Material preview, Render preview (EEVEE), F12 render (EEVEE), or command-line render (EEVEE), which is important for my render farm workflow.

Side note: sims display correctly using the Workbench renderer, as well as with Cycles. Again, I believe that the issue is only with EEVEE.

My workflow is to use the default GPU while creating EEVEE scenes, but then render off-line with the hi-perf GPU. The performance gain is significant (typically x3), and I can continue working while rendering in the background. If I didn't work this way, the hi-perf GPU would be idle and useless.

When rendering off-line (using hi-perf GPU), I can turn off rendering of the Smoke Domain with the following Blender command-line parameter, and the rest of the scene renders correctly:

--python-expr "import bpy;bpy.data.objects[\"Smoke Domain\"].hide_render=True"

See the attached EEVEE images, which were rendered off-line, using hi-perf GPU, command-line. The second one used the --python-expr parameter.

Greg Holmes (GregHolmes) renamed this task from Quick Smoke on Windows on "high-performance" GPU causes no smoke and grey objects in material/renderpreview/F12 to Quick Smoke on Windows on "high-performance" GPU causes no smoke and grey objects in material/renderpreview/F12 EEVEE.Mar 6 2020, 11:03 PM
Greg Holmes (GregHolmes) renamed this task from Quick Smoke on Windows on "high-performance" GPU causes no smoke and grey objects in material/renderpreview/F12 EEVEE to Smoke Domain on Windows on "high-performance" GPU causes no smoke and grey objects in material/renderpreview/F12 EEVEE.Mar 6 2020, 11:09 PM
Ankit Meel (ankitm) changed the task status from Needs Information from User to Needs Triage.Mar 7 2020, 1:05 AM
Germano Cavalcante (mano-wii) changed the task status from Needs Triage to Needs Information from User.Mar 9 2020, 9:36 PM

This is not a problem between "HIGH-PERFORMANCE GPU" and "DEFAULT GPU", but it's a problem with your AMD Radeon HD 8790M's OpenGL driver.
I could not identify the driver version in the report. Please use Help -> Report a Bug in Blender so there is complete information about the Blender version and graphics cards.
Optionally you could provide the system-info.txt generated in Help -> Save System Info.

Try upgrading the GPU driver (see https://docs.blender.org/manual/en/dev/troubleshooting/gpu/index.html)
Sometimes this helps to make such GPUs work.

The first post here was made using the "Help -> Report a Bug" method, repeated here:

Graphics card: Intel(R) HD Graphics 4600 Intel 4.3.0 - Build 20.19.15.4835 (DEFAULT GPU)
Graphics card: AMD Radeon HD 8790M ATI Technologies Inc. 4.5.13397 Core Profile Context 0 ("HIGH-PERFORMANCE" GPU)

I will check now for updated AMD drivers.

Updating the AMD driver solved the problem. The new version string is:

Graphics card: AMD Radeon HD 8790M ATI Technologies Inc. 4.5.13587 Core Profile Context 20.2.2 26.20.15019.19000 (the Context value was previously missing)

I have tested it in 2.80, 2.81a, 2.82, and 2.83 alpha, both interactive and command line. Also, Blender now auto-detects and uses the hi-perf GPU. This is a reminder of the value of updating drivers, and may provide a clue to those who are experiencing a similar issue (Blender not running on the best GPU available) . Thank you for helping with this.

The choice of GPU is sometimes defined by the power settings of the laptop (if it is using the battery for example).
Good to know what problem has been solved.
Closing the report then.