MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0030744Community[OCCT] OCCT:Visualizationpublic2019-05-25 15:592019-05-27 11:44
ReporterVico Liang 
Assigned Tokgv 
PrioritynormalSeverityminor 
StatusassignedResolutionopen 
PlatformOSOS Version
Product Version 
Target Version[OCCT] 7.4.0*Fixed in Version 
Summary0030744: Visualization - GLES display dot line as solid line on UWP
DescriptionGet the code from git master and build it with QTANGLE GLES2. The line with Aspect_TOL_DASH displayed as solid line.

The QTANGLE is from QT5.12.3, use build provided with QT installation.
Inlucde Path: Qt5.12.3\5.12.3\winrt_x64_msvc2017\include\QtANGLE
Lib path: Qt5.12.3\5.12.3\winrt_x64_msvc2017\lib
Bin path: Qt5.12.3\5.12.3\winrt_x64_msvc2017\bin
Steps To Reproduce
pload MODELING VISUALIZATION
box b 1 2 3
vclear
vinit View1
vglinfo
vdisplay -dispMode 0 b
vaxo
vfit
vaspects b -setLineType DASH
TagsNo tags attached.
Test case number
Attached Files

- Relationships
related to 0030745verifiedbugmaster Open CASCADE Visualization, TKOpenGl - fix initialization of GLES3 context 

-  Notes
(0084619)
kgv (developer)
2019-05-25 20:33

Try patch in branch CR30745.
(0084620)
Vico Liang (developer)
2019-05-26 06:28
edited on: 2019-05-26 11:12

Dear kgv, I tried the patch CR30745, the lines with dash style are still presented as solid. I'm using UWP, QTANGLE from QT5.12.3. The issue can be reproduced on Device Microsoft Surface and simulator of VS2017.

(0084621)
kgv (developer)
2019-05-26 09:02
edited on: 2019-05-26 09:43

Please provide sample reproducing the issue and diagnostic output about OpenGL ES version reported by application.
QTANGLE should support OpenGL ES 3.0 on Direct3D 11 capable devices.
Maybe this problem is specific to Simulator only?

(0084642)
Vico Liang (developer)
2019-05-26 11:42

There is no sample to reproducing the issue since we're developing a complex product, it's not easy to make it a sample to reproduce the issue. Neither on device nor simulator works. The diagnostic output on simulator as below:

EGLVersion : 1.4 (ANGLE 2.1.0.57ea533f79a7)

EGLVendor : Google Inc. (adapter LUID: 000000000001720c)

EGLClientAPIs : OpenGL_ES

EGLExtensions : EGL_EXT_create_context_robustness EGL_ANGLE_d3d_share_handle_client_buffer EGL_ANGLE_d3d_texture_client_buffer EGL_ANGLE_surface_d3d_texture_2d_share_handle EGL_ANGLE_query_surface_pointer EGL_ANGLE_window_fixed_size EGL_ANGLE_keyed_mutex EGL_ANGLE_surface_orientation EGL_NV_post_sub_buffer EGL_KHR_create_context EGL_EXT_device_query EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_get_all_proc_addresses EGL_KHR_stream EGL_KHR_stream_consumer_gltexture EGL_NV_stream_consumer_gltexture_yuv EGL_ANGLE_flexible_surface_compatibility EGL_ANGLE_stream_producer_d3d_texture_nv12 EGL_ANGLE_create_context_webgl_compatibility EGL_CHROMIUM_create_context_bind_generates_resource EGL_EXT_pixel_format_float EGL_KHR_surfaceless_context EGL_ANGLE_display_texture_share_group EGL_ANGLE_create_context_client_arrays EGL_ANGLE_program_cache_control EGL_ANGLE_robust_resource_initialization

GLvendor : Google Inc.

GLdevice : ANGLE (Intel(R) HD Graphics 630 Direct3D11 vs_5_0 ps_5_0)

GLversion : OpenGL ES 2.0 (ANGLE 2.1.0.57ea533f79a7)

GLSLversion : OpenGL ES GLSL ES 1.00 (ANGLE 2.1.0.57ea533f79a7)

Max texture size : 16384

Max FBO dump size : 16384x16384

Max combined texture units : 32

Max MSAA samples : 0

Viewport : 1280x960

GLextensions : GL_ANGLE_client_arrays GL_ANGLE_depth_texture GL_ANGLE_framebuffer_blit GL_ANGLE_framebuffer_multisample GL_ANGLE_instanced_arrays GL_ANGLE_lossy_etc_decode GL_ANGLE_pack_reverse_row_order GL_ANGLE_program_cache_control GL_ANGLE_request_extension GL_ANGLE_robust_client_memory GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_ANGLE_texture_usage GL_ANGLE_translated_shader_source GL_CHROMIUM_bind_generates_resource GL_CHROMIUM_bind_uniform_location GL_CHROMIUM_color_buffer_float_rgb GL_CHROMIUM_color_buffer_float_rgba GL_CHROMIUM_copy_compressed_texture GL_CHROMIUM_copy_texture GL_CHROMIUM_sync_query GL_EXT_blend_minmax GL_EXT_color_buffer_half_float GL_EXT_debug_marker GL_EXT_discard_framebuffer GL_EXT_disjoint_timer_query GL_EXT_draw_buffers GL_EXT_frag_depth GL_EXT_map_buffer_range GL_EXT_occlusion_query_boolean GL_EXT_read_format_bgra GL_EXT_robustness GL_EXT_sRGB GL_EXT_shader_texture_lod GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_s3tc_srgb GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_texture_rg GL_EXT_texture_storage GL_EXT_unpack_subimage GL_KHR_debug GL_NV_EGL_stream_consumer_external GL_NV_fence GL_NV_pack_subimage GL_NV_pixel_buffer_object GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth32 GL_OES_element_index_uint GL_OES_get_program_binary GL_OES_mapbuffer GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_surfaceless_context GL_OES_texture_float GL_OES_texture_float_linear GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_texture_npot GL_OES_vertex_array_object

ResolutionRatio : 1
(0084645)
kgv (developer)
2019-05-26 13:33

What is the code initializing OpenGL ES context then?
(0084649)
Vico Liang (developer)
2019-05-26 14:32

The code initialization OpenGL ES context is almost the same as QtAndroid sample.
(0084650)
kgv (developer)
2019-05-26 14:51

So this is Qt that initializes OpenGL ES?

In that case, it might be required playing with QSurfaceFormat in similar way as patch for 0030745 does:
void AndroidQt::handleWindowChanged (QQuickWindow* theWin)
{
  ...
  QSurfaceFormat aGlFormat;
  aGlFormat.setVersion (3, 0);
  theWin->setFormat (aGlFormat);
}
(0084651)
Vico Liang (developer)
2019-05-26 17:15

Dear kgv, It works after do it as your propose. we need to initialized OpenGL ES 3.0 explicitly. so What's the behavior if the driver don't support OpenGL 3.0? will it still work if the version lower than 3.0? Thanks for your help.
(0084653)
kgv (developer)
2019-05-27 10:27

> so What's the behavior if the driver don't support OpenGL 3.0?
That will do Qt depends on Qt, but I suppose that it will initialize an OpenGL ES 2.0 as fallback, because they don't have an advanced context selector interface and provide only "hints".

What will do OCCT 3D Viewer - it will work with OpenGL ES 2.0 with limitations (like unsupported stipple lines). Deciding upon it is a critical issue for application depends on how these stipple lines are using in application - so that you may consider disallowing starting an application on older devices or emitting a warning.

It should be technically possible implementing a fallback code for stipple lines for obsolete OpenGL ES 2.0 devices. OpenGL ES 3.0 has been released in '2012, that is - 7 years ago.
(0084657)
Vico Liang (developer)
2019-05-27 11:41
edited on: 2019-05-27 11:44

>It should be technically possible implementing a fallback code for stipple lines for obsolete OpenGL ES 2.0 devices. OpenGL ES 3.0 has been released in '2012, that is - 7 years ago.
It would be great if OCCT have such fallback. Most devices should support OpenGL ES 3.0, so this may not worth to maintain compatible with obsolete devices.

Thanks for your suggestion and help.


- Issue History
Date Modified Username Field Change
2019-05-25 15:59 Vico Liang New Issue
2019-05-25 15:59 Vico Liang Assigned To => kgv
2019-05-25 19:08 kgv Relationship added related to 0030745
2019-05-25 19:39 kgv Steps to Reproduce Updated View Revisions
2019-05-25 20:33 kgv Note Added: 0084619
2019-05-25 20:33 kgv Assigned To kgv => Vico Liang
2019-05-25 20:33 kgv Status new => feedback
2019-05-26 06:28 Vico Liang Note Added: 0084620
2019-05-26 06:42 Vico Liang Assigned To Vico Liang => kgv
2019-05-26 06:43 Vico Liang Status feedback => assigned
2019-05-26 09:02 kgv Note Added: 0084621
2019-05-26 09:02 kgv Assigned To kgv => Vico Liang
2019-05-26 09:02 kgv Status assigned => feedback
2019-05-26 09:06 kgv Note Edited: 0084621 View Revisions
2019-05-26 09:43 kgv Note Edited: 0084621 View Revisions
2019-05-26 11:12 Vico Liang Note Edited: 0084620 View Revisions
2019-05-26 11:42 Vico Liang Note Added: 0084642
2019-05-26 11:45 Vico Liang Assigned To Vico Liang => kgv
2019-05-26 11:45 Vico Liang Status feedback => assigned
2019-05-26 13:33 kgv Note Added: 0084645
2019-05-26 14:32 Vico Liang Note Added: 0084649
2019-05-26 14:51 kgv Note Added: 0084650
2019-05-26 17:15 Vico Liang Note Added: 0084651
2019-05-27 10:27 kgv Note Added: 0084653
2019-05-27 11:41 Vico Liang Note Added: 0084657
2019-05-27 11:44 Vico Liang Note Edited: 0084657 View Revisions


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker