Page MenuHome

Viewport Ambient Occlusion is inverted
Closed, ResolvedPublic


System Information
Windows 7 + Nvidia Geforce & OS X 10.10.3 + GTX 980

Blender Version
Broken: Blender 2.74

Short description of error

The new viewport AO feature is inverted. Any feature that sticks out is darkened, which cavities are untouched or brightened. This is in inverse of what AO should do, and the opposite of the AO feature in Cycles or Blender Internal.

Here's how it should look:

Exact steps for others to reproduce the error
Take Suzanne and enable viewport AO.



Event Timeline

William Reynish (billrey) updated the task description. (Show Details)
William Reynish (billrey) raised the priority of this task from to Needs Triage by Developer.
Antony Riakiotakis (psy-fi) claimed this task.

Does it render correctly when doing an opengl render?

To fix this I'd like to see you system_info.txt file please.

Antony Riakiotakis (psy-fi) triaged this task as Needs Information from User priority.May 19 2015, 3:43 PM

Right now I'm at a Windows work computer where I get the same result.

Here's my system info:

This is using an Intel - probably an optimus system, it's a well known issue on Intels, added your driver as an exception. Will be waiting for the Mac system_info as well.

Hi, tested again on the OS X system. I couldn't reproduce it after all. Could just be an intel thing I guess.

All fine then

this is wrong again. I have tested it on 2 windows machines (win 7 and win 10) the ambient occlusion in the viewport is inverted... MacOS and Linux are OK

The issue is highly driver specific, I need to have your system_info.txt file, also need the blender version hash that you tested.

hash: f337fea

Blender 2.76 (sub 0) System Information


version 2.76 (sub 0), branch b'master', commit date b'2015-11-03' b'10:56', hash b'f337fea', b''
build date: b'Tue 11/03/2015', b'11:08 PM'
platform: b'Windows'
binary path: 'C:\\Program Files\\Blender\\blender-2.76b-windows64\\blender-app.exe'
build cflags: b'/W3 /w34062 /wd4018 /wd4065 /wd4127 /wd4181 /wd4200 /wd4244 /wd4267 /wd4305 /wd4800 /we4013 /we4431 /nologo /J /Gd /MP /openmp '
build cxxflags: b'/W3 /w34062 /wd4018 /wd4065 /wd4127 /wd4181 /wd4200 /wd4244 /wd4267 /wd4305 /wd4800 /we4013 /we4431 /nologo /J /Gd /EHsc /MP /openmp '
build linkflags: b'/MACHINE:X64 /OPT:NOREF /SUBSYSTEM:CONSOLE /STACK:2097152 /INCREMENTAL:NO /NODEFAULTLIB:msvcrt.lib /NODEFAULTLIB:msvcmrt.lib /NODEFAULTLIB:msvcurt.lib /NODEFAULTLIB:msvcrtd.lib'
build system: b'CMake'


version: 3.4.2 (default, Dec 7 2014, 18:21:18) [MSC v.1800 64 bit (AMD64)]
'C:\\Program Files\\Blender\\blender-2.76b-windows64\\2.76\\scripts\\addons'
'C:\\Program Files\\Blender\\blender-2.76b-windows64\\2.76\\scripts\\startup'
'C:\\Program Files\\Blender\\blender-2.76b-windows64\\2.76\\scripts\\modules'
'C:\\Program Files\\Blender\\blender-2.76b-windows64\\'
'C:\\Program Files\\Blender\\blender-2.76b-windows64\\2.76\\python\\DLLs'
'C:\\Program Files\\Blender\\blender-2.76b-windows64\\2.76\\python\\lib'
'C:\\Program Files\\Blender\\blender-2.76b-windows64'
'C:\\Program Files\\Blender\\blender-2.76b-windows64\\2.76\\python'
'C:\\Program Files\\Blender\\blender-2.76b-windows64\\2.76\\python\\lib\\site-packages'
'C:\\Program Files\\Blender\\blender-2.76b-windows64\\2.76\\scripts\\freestyle\\modules'
'C:\\Program Files\\Blender\\blender-2.76b-windows64\\2.76\\scripts\\addons\\modules'
'C:\\Users\\Usuario\\AppData\\Roaming\\Blender Foundation\\Blender\\2.76\\scripts\\addons\\modules'


scripts: ['C:\\Program Files\\Blender\\blender-2.76b-windows64\\2.76\\scripts\\modules', 'C:\\Program Files\\Blender\\blender-2.76b-windows64\\2.76\\scripts']
user scripts: 'C:\\Users\\Usuario\\AppData\\Roaming\\Blender Foundation\\Blender\\2.76\\scripts'
pref scripts: None
datafiles: 'C:\\Users\\Usuario\\AppData\\Roaming\\Blender Foundation\\Blender\\2.76\\datafiles\\'
config: 'C:\\Users\\Usuario\\AppData\\Roaming\\Blender Foundation\\Blender\\2.76\\config\\'
scripts : 'C:\\Users\\Usuario\\AppData\\Roaming\\Blender Foundation\\Blender\\2.76\\scripts\\'
autosave: 'C:\\Users\\Usuario\\AppData\\Roaming\\Blender Foundation\\Blender\\2.76\\autosave\\'
tempdir: 'C:\\Users\\Usuario\\AppData\\Local\\Temp\\blender_a05348\\'


avcodec: '55, 39, 101'
avdevice: '55, 5, 100'
avformat: '55, 19, 104'
avutil: '52, 48, 101'
swscale: ' 2, 5, 101'


Version: 2.0.3
Loading method: linked (WITH_SDL_DYNLOAD=OFF)

Other Libraries:

OpenColorIO: 1, 0, 8
OpenImageIO: 1, 4, 16
OpenShadingLanguage: 1, 5, 11


renderer: 'Intel(R) HD Graphics'
vendor: 'Intel'
version: '3.3.0 - Build'

		'GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_blend_color'
		'GL_EXT_abgr GL_EXT_texture3D GL_EXT_clip_volume_hint'
		'GL_EXT_compiled_vertex_array GL_SGIS_texture_edge_clamp'
		'GL_SGIS_generate_mipmap GL_EXT_draw_range_elements GL_SGIS_texture_lod'
		'GL_EXT_rescale_normal GL_EXT_packed_pixels GL_EXT_texture_edge_clamp'
		'GL_EXT_separate_specular_color GL_ARB_multitexture'
		'GL_EXT_texture_env_combine GL_EXT_bgra GL_EXT_blend_func_separate'
		'GL_EXT_secondary_color GL_EXT_fog_coord GL_EXT_texture_env_add'
		'GL_ARB_texture_cube_map GL_ARB_transpose_matrix GL_ARB_texture_env_add'
		'GL_IBM_texture_mirrored_repeat GL_EXT_multi_draw_arrays'
		'GL_NV_blend_square GL_ARB_texture_compression'
		'GL_3DFX_texture_compression_FXT1 GL_EXT_texture_filter_anisotropic'
		'GL_ARB_texture_border_clamp GL_ARB_point_parameters'
		'GL_ARB_texture_env_combine GL_ARB_texture_env_dot3'
		'GL_ARB_texture_env_crossbar GL_EXT_texture_compression_s3tc'
		'GL_ARB_shadow GL_ARB_window_pos GL_EXT_shadow_funcs'
		'GL_EXT_stencil_wrap GL_ARB_vertex_program GL_EXT_texture_rectangle'
		'GL_ARB_fragment_program GL_EXT_stencil_two_side'
		'GL_ATI_separate_stencil GL_ARB_vertex_buffer_object'
		'GL_EXT_texture_lod_bias GL_ARB_occlusion_query GL_ARB_fragment_shader'
		'GL_ARB_shader_objects GL_ARB_shading_language_100'
		'GL_ARB_texture_non_power_of_two GL_ARB_vertex_shader'
		'GL_NV_texgen_reflection GL_ARB_point_sprite'
		'GL_ARB_fragment_program_shadow GL_EXT_blend_equation_separate'
		'GL_ARB_depth_texture GL_ARB_texture_rectangle GL_ARB_draw_buffers'
		'GL_ARB_color_buffer_float GL_ARB_half_float_pixel GL_ARB_texture_float'
		'GL_ARB_pixel_buffer_object GL_EXT_framebuffer_object'
		'GL_ARB_draw_instanced GL_ARB_half_float_vertex GL_ARB_occlusion_query2'
		'GL_EXT_draw_buffers2 GL_WIN_swap_hint GL_EXT_texture_sRGB'
		'GL_ARB_multisample GL_EXT_packed_float GL_EXT_texture_shared_exponent'
		'GL_ARB_texture_rg GL_ARB_texture_compression_rgtc'
		'GL_NV_conditional_render GL_EXT_texture_swizzle GL_ARB_sync'
		'GL_ARB_framebuffer_sRGB GL_EXT_packed_depth_stencil'
		'GL_ARB_depth_buffer_float GL_EXT_transform_feedback'
		'GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample'
		'GL_ARB_framebuffer_object GL_EXT_texture_array GL_EXT_texture_integer'
		'GL_ARB_map_buffer_range GL_EXT_texture_snorm'
		'GL_ARB_blend_func_extended GL_INTEL_performance_queries'
		'GL_ARB_copy_buffer GL_ARB_sampler_objects GL_NV_primitive_restart'
		'GL_ARB_seamless_cube_map GL_ARB_uniform_buffer_object'
		'GL_ARB_depth_clamp GL_ARB_vertex_array_bgra GL_ARB_shader_bit_encoding'
		'GL_ARB_draw_buffers_blend GL_ARB_geometry_shader4'
		'GL_ARB_texture_query_lod GL_ARB_explicit_attrib_location'
		'GL_ARB_draw_elements_base_vertex GL_ARB_instanced_arrays'
		'GL_ARB_fragment_coord_conventions GL_EXT_gpu_program_parameters'
		'GL_ARB_texture_buffer_object_rgb32 GL_ARB_compatibility'
		'GL_ARB_texture_rgb10_a2ui GL_ARB_texture_multisample'
		'GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_timer_query'
		'GL_ARB_vertex_array_object GL_ARB_provoking_vertex '

Implementation Dependent OpenGL Limits:

Maximum Fixed Function Texture Units: 8

Maximum Varying Floats: 41
Maximum Vertex Attributes: 16
Maximum Vertex Uniform Components: 1024
Maximum Fragment Uniform Components: 1024
Maximum Vertex Image Units: 16
Maximum Fragment Image Units: 16
Maximum Pipeline Image Units: 16


CPU device capabilities: SSE2 SSE3 SSE41

OpenCL device capabilities:
Number of platforms: 1
Platform #0
Platform Name: Intel(R) OpenCL
Platform Vendor: Intel(R) Corporation
Platform Version: OpenCL 1.1
Platform Profile: FULL_PROFILE
Platform Extensions: cl_intel_dx9_media_sharing cl_khr_byte_addressable_store cl_khr_gl_sharing cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_icd cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics
Number of devices: 2

		Device: #0
			Device Name:         Intel(R) Pentium(R) CPU G2010 @ 2.80GHz
			Device Vendor: Intel(R) Corporation
			Device OpenCL C Version: OpenCL C 1.1 
			Device Profile: FULL_PROFILE
			Device Version: OpenCL 1.1 (Build 25940.26006)
			Device Extensions: cl_khr_fp64 cl_khr_icd cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_byte_addressable_store cl_intel_printf cl_ext_device_fission cl_intel_exec_by_local_thread cl_khr_gl_sharing cl_intel_dx9_media_sharing
		Device: #1
			Device Name: Intel(R) HD Graphics
			Device Vendor: Intel(R) Corporation
			Device OpenCL C Version: OpenCL C 1.1 
			Device Profile: FULL_PROFILE
			Device Version: OpenCL 1.1 
			Device Extensions: cl_khr_icd cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_gl_sharing cl_khr_d3d10_sharing cl_intel_dx9_media_sharing cl_khr_3d_image_writes cl_khr_byte_addressable_store

I've added your driver to our list of erratic drivers so it should be fine in the next release.

The driver is a bit old and there's a chance that upgrading it will reintroduce the problem since we really depend on detecting the driver version itself within blender. If it comes back, we'll need to add that new driver version to our list. Yes, in case you haven't figured it out, this is a driver bug that we work around in blender.

Sorry we can't fix once and for all, but we don't have a list of drivers with the issue and Intel has said they will not fix the issue with new drivers for some older GPUs (though they've fixed it on newer GPUs/drivers) so we really have to handle this in a case by case basis.

yep, that's why I use NVidia... (not currently on my PC)