Page MenuHome

OpenGL Render fails on Intel-4600, with Anti-aliasing
Closed, ResolvedPublic

Description

System Information
Windows 8.0
Intel HD 4600

Blender Version
Broken: Latest Master 2746bbe
Worked: before rB53d73c51a76577b8b9bb32fd08a967560353ab47

Short description of error
OpenGL Render fails giving a transperent image and a white image when running blender.exe -d. With blender.exe -d I get:

C:\b\slave_cmake_x64_vc12\win64_cmake_vc2013\blender.git\source\blender\gpu\intern\gpu_extensions.c(1595): ``Read Multi-Sample Pixels'' -> GL Error (0x0502 - GL_INVALID_OPERATION): Invalid Operation

This only happens with anti-aliasing.

Exact steps for others to reproduce the error
Open GL render default scene

Event Timeline

Aaron Carlisle (Blendify) set Type to Bug.
Aaron Carlisle (Blendify) created this task.
Aaron Carlisle (Blendify) raised the priority of this task from to Needs Triage by Developer.

Do you have multisampling enabled maybe?

Yes, and to be more precise about the report I get a transparent image. OpenGL version 4.0

Campbell Barton (campbellbarton) triaged this task as Needs Information from User priority.Oct 16 2015, 6:36 AM

@Aaron Carlisle (Blendify), since you do many bug reports (which is good!), please try get into habit of including useful info.

  • Did this ever work? (try older versions)
  • Do simple cases work? (rendering default scene: 512x512, no Anti-Aliasing).
  • Are there any error messages in the console? (if so attach as txt)

note that off-screen renders aren't guaranteed to work, The graphics card may not support some off-screen buffer options we request, so this could be a case of having to disable some option, or the graphics card driver may even have a bug.

In the past Intel cards have had issues with off-screen rendering, though more recently I've found it worked fine.

  • Yes a couple of days ago it worked.
  • I tested the default scene I get transparent image.
  • Error message:
C:\b\slave_cmake_x64_vc12\win64_cmake_vc2013\blender.git\source\blender\gpu\intern\gpu_extensions.c(1595): ``Read Multi-Sample Pixels'' -> GL Error (0x0502 - GL_INVALID_OPERATION): Invalid Operation
  • Turning off Multisample still fails.
  • With Blender.exe -d I get a White frame and not a transparent frame

This must be caused by rB53d73c51a76577b8b9bb32fd08a967560353ab47

This code does check if multi-sample FBO's are supported, but there could be some missing check, or even a bug in the driver.

I've also tested this on an Intel HD Graphics 4600 on Linux, and it works properly.

Can you disable Anti-Aliasing from the render panel? This should work since it wont use the new code from the recent commit.

It works when disabling Anti-Aliasing

Campbell Barton (campbellbarton) renamed this task from OpenGL Render fails to OpenGL Render fails on Intel-4600, with Anti-aliasing.Oct 16 2015, 6:20 PM

@Aaron Carlisle (Blendify), do you have a developer environment setup?

It would help if you could test this with this patch: P271

Is Cuda required for compiling

No, you can disable every WITH_ option, except for WITH_PYTHON, for quick builds.

I don't think it is possible for me to set up a build environment ATM MSVC will take more time then I have

Im on osx 10.6.8 Ati HD 2400 Imac...
OpenGLl AntiAliasing doesn't work anymore!

I think I might be doing something wrong when I apply the patch:

C:\Users\Aaron\BlenderDev\blender>git apply C:\Users\Aaron\Desktop\MSAA.diff
C:\Users\Aaron\Desktop\MSAA.diff:10: trailing whitespace.
GPU_ASSERT_NO_GL_ERRORS("MSAA");
C:\Users\Aaron\Desktop\MSAA.diff:17: trailing whitespace.
GPU_ASSERT_NO_GL_ERRORS("MSAA");
C:\Users\Aaron\Desktop\MSAA.diff:19: trailing whitespace.
GPU_ASSERT_NO_GL_ERRORS("MSAA");
C:\Users\Aaron\Desktop\MSAA.diff:22: trailing whitespace.
GPU_ASSERT_NO_GL_ERRORS("MSAA");
C:\Users\Aaron\Desktop\MSAA.diff:30: trailing whitespace.
GPU_ASSERT_NO_GL_ERRORS("MSAA");
fatal: corrupt patch at line 68

C:\Users\Aaron\BlenderDev\blender>
Aaron Carlisle (Blendify) raised the priority of this task from Needs Information from User to Confirmed, Medium.Oct 18 2015, 7:09 PM

I think I might be doing something wrong when I apply the patch:

C:\Users\Aaron\BlenderDev\blender>git apply C:\Users\Aaron\Desktop\MSAA.diff
C:\Users\Aaron\Desktop\MSAA.diff:10: trailing whitespace.
GPU_ASSERT_NO_GL_ERRORS("MSAA");
C:\Users\Aaron\Desktop\MSAA.diff:17: trailing whitespace.
GPU_ASSERT_NO_GL_ERRORS("MSAA");
C:\Users\Aaron\Desktop\MSAA.diff:19: trailing whitespace.
GPU_ASSERT_NO_GL_ERRORS("MSAA");
C:\Users\Aaron\Desktop\MSAA.diff:22: trailing whitespace.
GPU_ASSERT_NO_GL_ERRORS("MSAA");
C:\Users\Aaron\Desktop\MSAA.diff:30: trailing whitespace.
GPU_ASSERT_NO_GL_ERRORS("MSAA");
fatal: corrupt patch at line 68
C:\Users\Aaron\BlenderDev\blender>

http://wiki.blender.org/index.php/Dev:Doc/Tools/Patches

for git diffs

patch -p1 -R < some-new-feature.diff

Bug also confirmed in my system.
Windows 10 x64
Intel Baytrail

After applying the patch and recompile, OpenGL render with antialiasing is still not working.

@Oscar (KINjO), The patch is not intended to fix anything. It is to give the exact line that fails.

Could you paste in the text from Blenders console?
https://www.blender.org/manual/interface/window_system/console_window.html?#ms-windows

@Oscar (KINjO), The patch is not intended to fix anything. It is to give the exact line that fails.
Could you paste in the text from Blenders console?
https://www.blender.org/manual/interface/window_system/console_window.html?#ms-windows

Oops sorry...

This is the output from the patched version:

C:\Users\oscar\Documents\Compile\Blender\blender\source\blender\gpu\intern\gpu_e
xtensions.c:1566: ``MSAA'' -> GL Error (0x0502 - GL_INVALID_OPERATION): Invalid
Operation
Evaluate all animation - 186.000000
        No Actions, so no animation needs to be evaluated...

And this output is from the buildbot version

C:\b\slave_cmake_x64_vc12\win64_cmake_vc2013\blender.git\source\blender\gpu\inte
rn\gpu_extensions.c:1595: ``Read Multi-Sample Pixels'' -> GL Error (0x0502 - GL_
INVALID_OPERATION): Invalid Operation
Evaluate all animation - 186.000000
        No Actions, so no animation needs to be evaluated...

@Oscar (KINjO),
Thanks for the feedback, the line that fails is:

glBindFramebuffer(GL_DRAW_FRAMEBUFFER, fbo_blit);


Added check for GLEW_EXT_framebuffer_blit, rB67e1c9735003bea56efb6ccfe7348dd7518ff25b

Please check if this resolves the issue.

Oscar (KINjO) added a comment.EditedOct 19 2015, 11:58 AM

@Campbell Barton (campbellbarton),

Tested with the latest buildbot (67e1c97) still not working, the render outputs a blank image.

This is the console output:

PS C:\Program Files\Blender> .\blender-app.exe -d --factory-startup

.\blender-app.exe : C:\b\slave_cmake_x64_vc12\win64_cmake_vc2013\blender.git\source\bl
ender\gpu\intern\gpu_extensions.c:1599: ``Read Multi-Sample Pixels'' -> GL Error 
(0x0502 - GL_INVALID_OPERATION): Invalid Operation
En línea: 1 Carácter: 1
+ .\blender-app.exe -d  --factory-startup
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (C:\b\slave_cmak...valid Operation:String 
   ) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError
 
IDProperty group len: 128 0000000E8C181DF8
uiAfterFunc len: 256 0000000E8BDFAB68

Hi Campbell, my system-info is already posted here, tell me if you need anything else.

Bug also confirmed in my system.
Windows 10 x64
Intel Baytrail


After applying the patch and recompile, OpenGL render with antialiasing is still not working.

Here is mine