Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Variable Layer Editing - OpenGL Error #179

Closed
wywywywy opened this issue Mar 10, 2017 · 11 comments
Closed

Variable Layer Editing - OpenGL Error #179

wywywywy opened this issue Mar 10, 2017 · 11 comments

Comments

@wywywywy
Copy link

Version

1.33.8-prusa3d-win64

Operating system type + version

Windows 7 x64

Behavior

When I click on the "Layer editing" button, an error message shows up -

Cannot compile an OpenGL Shader, therefore the Variable Layer Editing will be disabled.

Fragment shader compilation failed:
No errors.

Then the button becomes disabled.

I already have the latest driver from Nvidia.

Any ideas?

Thanks.

@faeton13
Copy link

faeton13 commented Mar 14, 2017

same thing here. win10 x64 opengl 3.3

@bubnikv
Copy link
Collaborator

bubnikv commented Mar 17, 2017

The current code is patched using OpenGL 1.1 and outdated OpenGL extensions as this is the only OpenGL shader API supported by Perl. I am currently re-writing this piece of code into C++, so it will use OpenGL 2.0. This should fix most of these issues.

@bubnikv
Copy link
Collaborator

bubnikv commented Mar 21, 2017

Would you please try the following alpha build, whether this solves your issue with the variable layer height editing?

Just please understand that it is an alpha. There has been a lot of work done on it, which was not properly tested yet, for example paralellization of many slicing steps and a revamp of the OpenGL visualization code.

Slic3r-1.33.8.125-prusa3d-win64-full-g6b99cbd-201703210808.zip

@wywywywy
Copy link
Author

Hi,

Just tried it and the layer editing doesn't error out any more. Hooray.

But the preview tab seems to have become very slow - is it related?

Thanks.

@bubnikv
Copy link
Collaborator

bubnikv commented Mar 21, 2017

But the preview tab seems to have become very slow - is it related?

Which preview?

@bubnikv
Copy link
Collaborator

bubnikv commented Mar 21, 2017

I have rewritten the 3D visualization to use Vertex Buffer Objects and OpenGL 2.0 shaders. What graphics card are you using? Would you please post a log generated by slic3r help menu -> system info?

@wywywywy
Copy link
Author

See below. It's using the Intel GPU rather than switching to the Nvidia. Maybe that's the problem.

Slic3r Prusa Edition
Version: 1.33.8.125-prusa3d-win64
Build: Slic3r-1.33.8.125-prusa3d-win64-full-g6b99cbd-201703210808
Operating System: MSWin32
System Architecture: MSWin32-x64-multi-thread
Windows Version:
Microsoft Windows [Version 6.1.7601]

Summary of my perl5 (revision 5 version 24 subversion 0) configuration:

Platform:
osname=MSWin32, osvers=10.0, archname=MSWin32-x64-multi-thread
uname=''
config_args='undef'
hint=recommended, useposix=true, d_sigaction=undef
useithreads=define, usemultiplicity=define
use64bitint=define, use64bitall=undef, uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='cl', ccflags ='-nologo -GF -W3 -O1 -MD -Zi -DNDEBUG -GL -fp:precise -DWIN32 -D_CONSOLE -DNO_STRICT -DWIN64 -DCONSERVATIVE -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DWIN32_NO_REGISTRY',
optimize='-O1 -MD -Zi -DNDEBUG -GL -fp:precise',
cppflags='-DWIN32'
ccversion='18.00.40629', gccversion='', gccosandvers=''
intsize=4, longsize=4, ptrsize=8, doublesize=8, byteorder=12345678, doublekind=3
d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=8, longdblkind=0
ivtype='__int64', ivsize=8, nvtype='double', nvsize=8, Off_t='__int64', lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='link', ldflags ='-nologo -nodefaultlib -debug -opt:ref,icf -ltcg -libpath:"c:\wperl64\lib\CORE" -machine:AMD64 -subsystem:console,"5.02"'
libpth=\lib
libs=oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib
perllibs=oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib
libc=msvcrt.lib, so=dll, useshrplib=true, libperl=perl524.lib
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
cccdlflags=' ', lddlflags='-dll -nologo -nodefaultlib -debug -opt:ref,icf -ltcg -libpath:"c:\wperl64\lib\CORE" -machine:AMD64 -subsystem:console,"5.02"'

@inc:
C:/Users/wl/Desktop/Slic3r-1.33.8-prusa3d-win64-full-201703072158/lib
.
OpenGL installation
Using POGL v0.6704
GL version: 4.0.0 - Build 9.18.10.3204
vendor: Intel
renderer: Intel(R) HD Graphics 4600
GLSL version: 4.00 - Build 9.18.10.3204
Installed extensions (* implemented in the module):
GL_3DFX_texture_compression_FXT1
GL_ARB_ES2_compatibility
GL_ARB_base_instance
GL_ARB_blend_func_extended

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

@wywywywy
Copy link
Author

Ok I just updated the Intel driver and it's a lot better although not perfect.
Also the initialisation takes about 30s.

@bubnikv
Copy link
Collaborator

bubnikv commented Mar 21, 2017 via email

@bubnikv
Copy link
Collaborator

bubnikv commented Mar 23, 2017

@wywywywy Please provide additional information on what initialisation takes 30 seconds and whether it is worse than in 1.33.8. Otherwise I will close this issue.

I am going to release an official alpha soon, so we will collect more data on the behavior with the OpenGL vertex buffer objects.

@bubnikv
Copy link
Collaborator

bubnikv commented Mar 30, 2017

The variable layer height visualization has been rewritten to OpenGL 2.0. Please use the current alpha 1.34.0.

Closing. Please feel free to reopen this issue, if you still have problems.

@bubnikv bubnikv closed this as completed Mar 30, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants